- 博客(3)
- 收藏
- 关注
原创 verilog i2c 通用控制模块
突然发现好久没写文章了,今天就写一篇关于i2c的通用控制模块。 i2c协议保护起始,数据传输,ACK或NACK,和传输终止信号。以下是对应的时序图: 在SCL为高的情况下,SDA由高跳到低,这是起始信号,之后在时钟为低电平时更新数据,在高电平时数据保持稳定,每一次传输8bit数据之后是ACK信号,在受到ACK信号后可以选择结束通信或者继续传输数据,这是基本的i2c协议。 而eeprom的i2c有些许不一样,所以在设计时应考虑加入一些冗余以兼容eeprom的读写。 eeprom的...
2021-11-06 11:00:45
810
原创 BCD与格雷码
bcd码(binary codes decimal)是一种使用二进制码表示10进制码的一种编码。要表示一位10进制的编码需要4位二进制(2^4=16),其中共有种,大约为2.9*10^9种,而目前常用的编码有 8421 、 2421码等,这些编码有固定的权值,而与之相对的是变权码,这些编码没有固定的权值,常用的有余3码、余3循环码、格雷码(Gray code)等。 格雷码有许多种,如典型格雷码,修改格雷码,格雷码1等。 今天的主角为8421编码和典型格雷码, 下表对比8421和格雷码的一些区别:
2021-09-08 14:10:42
5263
3
原创 迭代电路学习分享
今天分享关于迭代电路的内容: 迭代电路中,需要对低位的内容的求解,并将答案提交到高位,高位利用地位的结果进行计算,并向更高位提交结果,从而获得最终的答案: 经典的迭代电路有串行加法器。 下面用一个奇校验器的例子进行说明: module odd_checker(in,out,flag); parameter n=8; input [n-2:0]in; output [n-1:0]out ; output flag; wire [n-1:0]tmp; assign tmp={t
2021-09-07 13:10:04
622
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人