内部模块的设计和Verilog HDL实现
内部模块的设计和Verilog HDL实现时钟分频器
由于通常的FPGA系统外部时钟输入都很高,如50MHz,,而IIC总线接口协议规定数据传输速率在标准模式下为100Kbit/s,快速模式下为400 kbit/s。
为了能产生正确的数据传输时序,由时钟分频寄存器对输入时钟进行分频再作为时序控制器的时钟。
8 bit的计数器可以满足大多数情况下的使用,但是如果微处理器的时钟比较大,就需要更大的计数器。
同样地,如果IIC总线要求工作速度比较大,那么就需要一个相对小的计数器。
系统复位时,计数器清零,当时钟上升沿时,计数器加1。
在本设计中,假定外部时钟为50 MHz,总线工作在标准模式100 KHz,基于Verilog同步设计的需要,本地时钟一般为SCL时钟的整数倍,这里取2倍。可以求得计数器值NUM=50M/(100K*2)=250,换算为16进制为FA。通过软件编程可以实现数据传输速率的控制,
其模块的RTL级描述如图4.2
图4.2时钟分频模块RTL级描述
用Quartus II软件编译仿真之后生成一个器件模块图,其接口电路模块图形如图4.3。
图4.3时钟分频模块图
画的很好啊...... 内部模块的设计和Verilog HDL实现 内部模块的设计和Verilog HDL实现 晓灰灰 发表于 2017-9-21 10:37
内部模块的设计和Verilog HDL实现
:) :) :) :) :) 内部模块的设计和Verilog HDL实现 内部模块的设计和Verilog HDL实现
页:
[1]