原创 【博客大赛】RISC CPU设计之时钟发生器

2012-3-31 20:04 1781 13 15 分类: FPGA/CPLD

该时钟发生器采用同步状态机的设计方法,不但使时钟模块的源程序可以被各种综合器综合,也使得由其生成的clk1、clk2、clk4、fetch、alu_clk在跳变时间同步性能上有明显的提高,为整个系统的性能提高打下了良好的基础。

其中fetch信号是外部clk信号的八分频信号,利用fetch的上升沿来触发cpu控制器开始执行一条指令。clk1用作指令寄存器、累加器、状态控制器的时钟信号。alu_clk用来触发运算器。

附上verilog程序和仿真截图。参考夏宇闻的 数字系统设计。

clksym.jpg

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

用户431328 2012-12-25 14:13

我点击下载之后,显示的是不存在该页面????这是为什么

用户1611293 2012-5-15 11:27

懂得分析原理才是王道,这样才有学习的味道

lzm1019_646676435 2012-5-15 08:53

这个才是传道。谢谢楼主

用户229719 2012-5-8 13:34

简单易懂

用户403664 2012-4-1 15:44

如果可以多帖一点博文出来就好啦!!
相关推荐阅读
用户1623618 2012-05-22 18:54
【博客大赛】risc cpu模块调试
不知道博客大赛有木有结束,不管了,就是借着这个机会好好学学risc cpu设计。 这个risc cpu是参考夏宇闻老师的《数字系统设计——verilog实现》实现的,这是一个多周期,无流水的c...
用户1623618 2012-05-04 10:28
【博客大赛】RISC CPU设计之外围模块
为了对cpu进行测试,需要有存储测试程序的rom和装载数据的ram、地址译码器。 1.地址译码器用于产生选通信号,选通rom或ram。 module addr_decode(     i...
用户1623618 2012-05-04 10:09
【博客大赛】RISC CPU设计之状态控制器
状态控制器由两部分组成:1.状态机(machine)。2.状态控制器(machinectl)。 状态控制器接收复位信号,当rst有效时,通过信号ena使其为0,输入到状态机中停止状态机的工作。...
用户1623618 2012-05-03 13:43
【博客大赛】RISC CPU设计之程序计数器
程序计数器用于提供指令地址,以便读取指令,指令安地址顺序存放在存储器中。有两种途径可形成指令地址:一是顺序执行的情况,二是遇到要改变顺序执行的情况。例如,执行JMP指令后,需要形成新的指令地址。下...
用户1623618 2012-04-15 10:21
【博客大赛】RISC CPU设计之数据控制器&地址多路器
数据控制器 数据控制器的作用是控制累加器数据输出,由于数据总线是各种操作时传送数据的公共通道,不同的情况下传送不同的内容。有时需要传输指令,有时要传RAM区或接口的数据。累加器的数据只有在需要...
用户1623618 2012-04-15 09:56
【博客大赛】RISC CPU设计之累加器&算术运算器
累加器用于存放当前的结果,它也是双目运算其中一个数据来源。复位后,累加器的值是0。当累加器通过ENA口收到来自CPU状态控制器LOAD_ACC信号时,在CLK1时钟上升沿就收到来自于数据总线的数据...
我要评论
2
13
关闭 站长推荐上一条 /3 下一条