天津大学ASIC设计中心数字集成电路设计基本流程(初稿)Shiyafeng.doc

天津大学ASIC设计中心数字集成电路设计基本流程(初稿)Shiyafeng.doc

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

数字集成电路设计基本流程 (初稿) Shiyafeng 2012.4 数字集成电路设计的基本流程如图1所示。这里我们以一个基本的例子来说明数字集成电路的基本设计流程。 RTL代码编写 根据设计要求编写verilog代码。 示例: 要求:编写一个奇数分频器,例如实现对原始时钟clk的7分频。 分析:目的是要实现奇数个分频,那么首先是要实现时钟的半个周期的分离问题。这里我们通过将原始时钟clk信号进行处理后,得到触发信号clk_tmp,该信号在前三个周期与clk相同,在接下来的半个周期变为~clk,这样就会在本来会出下时钟下降沿的时候再次出现时钟上升沿,从而使用该触发信号作为触发计数信号的话就可以实现7分频。要产生clk_tmp信号可以考虑将clk和分频信号进行异或操作即可得到。 Verilog代码如下: //Verilog HDL written by shiyafeng //Generate clock divided by odd number //Company:Tianjin University //Date:2012.4.10 module odd_div7(//input signals clk, rst_n, //output signals clk0, clk1, clk2, clk3); //declare I/O ports input clk,rst_n; output clk0,clk1,clk2,clk3; //internal signal declaration reg[7:0] state,next_state; reg clk0,clk1,clk2,clk3; wire clk_tmp; //one-hot code for fsm parameter s0=8b0000_0001, s1=8b0000_0010, s2=8b0000_0100, s3=8b0000_1000, s4=8b0001_0000, s5=8b0010_0000, s6=8b0100_0000, s7=8b1000_0000; //state triggered by the rising edge of clk_tmp and reseted by asynchronous rst_n with 1b0 always@(posedge clk_tmp or negedge rst_n) if(!rst_n) state=s0; else state=next_state; //fsm state cycle with s0--s1--s2--s3--s4--s5--s6--s7--s0 always@(rst_n or state or clk0 or clk1 or clk2 or clk3) if(!rst_n) {clk3,clk2,clk1,clk0}=4b0000; //reset by rst_n if rst_n=1b0 else case(state) s0: begin next_state=s1; {clk3,clk2,clk1,clk0}=4b0000; //clk0=1b0,clk1=1b0,clk2=1b0,clk3=1b0 end s1: begin next_state=s2; {clk2,clk1,clk0}=4b0001; //clk0=1b1,clk1=1b0,clk2=1b0,clk3=1b0 end s2: begin next_state=s3; {clk3,clk2,clk1,clk0}=4b0011; //clk0=1b1,clk1=1b1,clk2=1b0,clk3=1b0 end s3: begin

文档评论(0)

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

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

1亿VIP精品文档

相关文档