Chapter 3 Combination and Sequential Circuits Modeling.ppt

Chapter 3 Combination and Sequential Circuits Modeling.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Chapter 3 Combination and Sequential Circuits Modeling.ppt

Chapter 3 : Combination and Sequential Circuits Modeling SC_MODULE SC_MODULE (module_name) { // declarations of ports : input, output and inout // Declarations of signals used in inter-process // Communication // Process method declarations // Other (non-process) methods // Child module instantiation pointer declarations // Data variable declarations SC_CTOR (module_name) { //Child module instantiations and interconnections SC_METHOD (process_method_name); // Sensitivity list for process SC_THREAD (process_method_name); // Sensitivity list for process Combination Logic : Single Process SC_MODULE (mac) { sc_inint a, b, c; sc_outint sum; void proc_mac() { sum = a * b + c;}; SC_CTOR(mac) { SC_METHOD(proc_mac) sensitive a b c; } }; Combination Logic Multiple Processes SC_MODULE (mult_procs) { Sc_intbool source; Sc_outbool drain; Sc_signalbool connect1, connect2; void mult_procs_1() { connect1 = !source;); void mult_procs_2() { connect2 = !connect;}; void mult_procs_3() { drain = !connect2;}; SC_CTOR (mult_procs) { SC_METHOD (mult_procs_1); sensitvie source; SC_METHOD (mult_procs_2); sensitvie connect1; SC_METHOD (mult_procs_3); sensitvie connect2; } }; Sequential Logic Example SC_MODULE (count4) { //sc_in_clk ? sc_inbool sc_in_clk clk; sc_inbool rst; sc_outint cout; int curValue; void proc_mac() { curValue = rst ? 0 : curValue + 1; cout = curValue;}; SC_CTOR(mac) { SC_METHOD(proc_mac) sensitive_pos clk rst; //async reset sensitive_pos clk; //sync reset } }; Port Read and Write Issues Code SC_MODULE (xor) { sc_insc_uint4 bre, sty; sc_outsc_uint4 tap; void proc_xor() { tap = bre ^ sty;}; SC_CTOR (xor) { SC_METHOD (proc_xor); sensitive bre sty; } }; Compiler error error C2678: 二元運算子 ^ : 找不到使用左方運算元型別 sc_inT 的運算子 (或是沒有可接受的轉換) with [ T=sc_dt::sc_uint4 ] Port Read and Write Issues (cont.) Code SC_MODULE (xor) { sc_insc_uint4 bre, st

文档评论(0)

shengyp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档