自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 PCIe协议学习

20220208link width通道数,lanePCIe双单工模式,可以成为全双工SAS/SATA半双工模式PCIe带宽,指的是双向带宽,PCIe1.0 X1通道PCIe1.0比特率为2.5Gb/s,物理层使用8/10编码,即8bit数据,实际在线路中传输10bit数据,2.5 X 2(双通道)/10bit=05.GB/SPCIe2.05 X 2(双通道)/10bit=1GB/SPCIe3.0并没有变成10Gb/s而是 8Gb/S采用128/130编码方式,相

2022-02-08 22:11:32 9405 2

原创 VSCODE配置绘图工具

VSCode 中使用 PlantUML 插件生成 UML | Ephen‘s BlogVSCode 中使用 PlantUML 插件画图(一)_daocaoren94的博客-优快云博客_vscode画图插件玩转vscode支持PlantUML绘制预览流程图_zhaoem82的博客-优快云博客_plantuml预览PlantUML画复杂流程图_zhangjikuan的专栏-优快云博客_plantuml 流程图PlantUML,让你知道什么才是高效绘制流程图 - 知乎状态图的语法和功能

2022-02-05 15:53:04 882

原创 wavedorm的使用,vscode画时序图

20220202vscode下载插件,然后快捷键使用这个指的是,要输入这两个命令才能执行,顺序输入,而只输入一个是没法执行的画时序图的开源插件--Wavedorm使用简介 - will_w - 博客园

2022-02-02 21:28:47 1091

原创 HDLbits_Conditional

20220201Reductionfor循环的使用定义i为integer i必须使用generate产生for循环为什么不能使用?

2022-02-01 18:25:51 556

原创 HDLbits_module_cseladd

20220130第一次接触到拿空间换时间如果处理是多位的,且前一位和后一位是有关系的,那正确结果必须等前一位计算结束,后一位再进行计算,是正确的,否则是不正确的就像32位加法器,两种电路结构如下:...

2022-01-30 20:02:56 540

原创 单线双向模块_UART学习

2022.01.28学习目标:最快的速度学习一个模块,同时懂得仿真的使用该模块的意义就是,通过单线双向能够完成多位数据的传输,即实现并转串,这样可以节省IO资源,可以简化互联如下图,MASTER和SLAVE之间通过单线连接,该单线实现数据的双向传输转换为并行数据,给到模块内部使用模块同时需要支持并行数据的位宽可调节,如下引入一些基本的概念波特率:每秒传输多少个bit,比如9600,则传输周期位1/9600,即多长周期传输一个bit的数据,1bit的时间大概是1/960

2022-01-28 16:09:19 3785

原创 HDLbits_Alwaysblock1

2022.01.28学习程序格式,always,initial,task,function1、always不能带有assign持续赋值语句2、assign左侧的数据类型必须是wire,而always里面的必须是reg,和最终综合成的硬件无关,只是语法3、时序模块,输出不是立马可见的,而是在下一个时钟上升到来之前才变化的4、三个规则,非要理解是没必要的,是要非常清楚编译器的原理的5、XOR异或运算6、ALWAYS时序逻辑生效的时间是什么时候?比如以下代码从时序图

2022-01-28 00:54:05 499

原创 PCA9555详细学习

2022.01.27控制寄存器和命令寄存器,及英文理解一般8位作为地址,其中前四位时固定的,中间三位为地址配置,最后一位是读写位,即读是1,写是0当地址位,正确应答之后,主机会发送一个控制字节,控制字节将会存在PCA9555的控制寄存器中,其中三个字节,将会定义操作以及内部的寄存器,控制寄存器能被读以及写,控制字节只有写的时候才发送command其实就相当于相应的控制寄存器地址,比如00就是访问input port0的寄存器0和1寄存器地址,仅仅反应了输入到pin的逻辑电

2022-01-27 21:27:36 13110

原创 服务器_背板_逻辑模块_学习_INOUT的理解

2022.01.27INOUT的理解为什么inout的引脚配置成高阻态就能作为输入使用?双向信号本质就三态门当控制引脚,控制位输出时,则打开三态门,将DATA_IN直接与O_DATA链接起来,这样直接输出信号当控制引脚,控制输入时,则关闭三态门,将IO_DATA直接给O_DATA拿I2C代码举例assing sda=(sda_oe)?sda_out:1'bz;当sda_oe使能时,sda=sda_out,其中sda_out为该模块将要输出的数据当sda_oe不使能时,

2022-01-27 13:58:57 1336

原创 服务器_背板_逻辑模块_学习_PCA9555

2022.01.26PCA9555 datasheet阅读1、通过以下框图学习PCA9555的功能,具体如下,A0/A1/A2作为地址配置寄存器,INT~为中断产生逻辑,SCL/SDA与MASTER交互,当MASTER发送数据后,如果是写,经过核心部件,I2C BUS CONTROL,已经确定是为写,则将IO配置位输出,然后将8位数据转换为8bit并行IO数据,一共转换两次,共16位数据,作为外部输出写的时序这样理解太简单,为什么只要是写就开始转换?没有转换的时间没?为什么直接转换2

2022-01-26 22:13:30 3368

原创 Verilog_HDLbits_刷题_Modules Addr2

2022.01.261、generate的用法2、深入理解,模块内部例化其余的模块知识点:1、verilog-2001中增加语句2、generate循环,产生一个对象的多次例化3、关键词,generate,endgenerate,genvar,localparamgenvar是一个新增的数据类型,标尺变量必须定义为genvar变量genvar i;产生标尺表里generate 关键词for(i=0;i<8;i++)begin:block 模块名buf

2022-01-26 20:52:45 264

原创 Verilog_HDLbits_刷题_Modules and Vectors

2022.01.25Modules and Vectors1、语法错误1,assign的用法,不能用在always中,assign可以理解为就是将两个wire强制性连接起来,而阻塞性赋值,当条件满足时,将两个wire或reg给赋值2、CASE的使用方法,case必须有endcase3、if和else的使用,为什么直接带else是不对的?必须else if?留给自己的思考题...

2022-01-25 22:58:47 238

原创 《小鞋子》观后感

最近突发奇想,利用上班中空闲的时间,看一些豆瓣评分高的电影,为了不让自己遗忘,并且看后写一些内容,也能够加深自己的印象,所以以此方式来记录自己观看后的电影。小鞋子,之前有过印象,应该是看一个影评之后了解到的,看之前了解的并不多,只知道是一对兄妹,哥哥把妹妹的鞋子弄丢了,为了不让父母知道,因为家里比较穷,所以买不起新的鞋子,这兄妹俩开始了一段换鞋上学的时光,以后长...

2018-11-01 10:00:11 2789

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除