- 博客(18)
- 收藏
- 关注
原创 组合逻辑、时序逻辑的适用场合、数字逻辑电路的时序分析
定义:在一片wafer(晶圆)上,不可能每点的载流子平均漂移速度都是一样的,随着电压、温度不同,它们的特性也会不同,把他们分类就有了PVT(Process,Voltage,Temperature)总体而言,组合逻辑处理无状态的逻辑功能,而时序逻辑引入了状态和时钟信号,使得电路能够存储和处理有状态的信息,从而实现更复杂的功能和控制。保持时间(hold time、Th):在在采样(时钟上升沿)之后,数据要保持不变的最小时间;组合逻辑电路的输出完全由输入决定,没有时钟信号的概念,因此输出是输入的函数。
2023-12-28 21:32:58 2206 1
原创 AXI 协议学习
第二,AXI协议是一个读写通道分离的总线协议, AXI协议的读写分离不仅仅是数据总线是分离的,地址和控制总线也是分离的。例如,写事务并不一定非要等地址和控制信号发送以后再发送写数据,AXI允许先发送写数据再发送写地址和写控制;AXI也允许先发送多个写地址和写控制,再慢慢发送写数据,而不是一次地址一次数据这样的传统总线模式。AXI总线的各通道都会有一对握手信号:Valid信号和Ready信号,只有在两个信号都有效时,通道数据才开始传输。AXI协议中的突发传输是为了提高总线的效率和数据传输的带宽。
2023-12-21 15:03:29 1319
原创 XADC数据采集放入双端口RAM 以及读取RAM数据
双端口RAM:类似两片RAM单独用clk、ena、wea、addr、douta、dina控制,所以有两套这样的参数。伪双端口RAM:两组时钟、两个地址、一个输入dina、一个douta 可以进行读和写(FIFO中比较常用)单端口RAM:一个时钟、一个地址、一个douta、一个dina。接下来想做 XADC采集信号 进行傅里叶变换。ena = 1 :使能信号。wea = 1 :写。wea = 0 :读。
2023-12-09 22:08:27 159
原创 FPGA Test Bench文件的编写
tb文件是为了对硬件描述语言 进行电路的仿真测试主要有以下三部分• 产生模拟激励(波形);• 将产生的激励加入到被测试模块中并观察其响应;• 将输出响应与期望值相比较。
2023-12-09 14:46:28 1524
原创 【牛客】 generate、三输入比较器
对于generate语句 更多是用于生成多个module;在夏宇闻老师的书中有这么样的描述:1.生成块(generate…for)本质是使用循环内的一条语句来替代多条重复的verilog语句,简化编程2.genvar用于生成变量,只能用于生成块中,在确立后的仿真中不存在3.循环生成语句可以嵌套使用 但是使用同一个生成变量作为索引的循环生成语句不能相互嵌套(就是循环嵌套不能用同一个生成变量)
2023-12-05 21:53:13 98
原创 verilog阻塞式和非阻塞式赋值
关于组合逻辑和时序逻辑的不同,我们可以从三方面来理解,分别是code(代码),电路图和波形图三方面。1、从代码层面来看,时序逻辑即敏感列表里面带有时钟上升沿,如果是没有上升沿或者是带有“*”号的代码,为组合逻辑。2、电路层面,两种逻辑反映的电路也有不同,时序逻辑相当于在组合逻辑的基础上多了一个D触发器。3、波形图层面,组合逻辑的波形是即刻反映变化的,与时钟无关;但是时序逻辑的波形不会立刻反映出来,只有在时钟的上升沿发生变化。c = a+b;讲的很好!!!
2023-11-28 19:25:53 64
原创 FPGA zybo开发 vivado 调用ram ip核
单端口:一个端口 用于读写 不能同时进行伪双端口(SDP):两个端口 一个用于读 一个用于写双端口:两个端口 都可以用于读写当然要尽量避免同时访问一个地址配置成:单端口只读模式 则相当于 ROM(可以调用coe文件提前写入)
2023-10-17 22:09:59 283
原创 matlab联合vivada创建FIR滤波器
利用matlab生成.coe 作为vivado的IP文件 接着利用matlab生成两个不同频率波s1 s2 并叠加生成s采样数据以16进制写入文本文件 作为仿真输入波形 查看滤波器效果
2023-10-10 23:00:12 314 1
原创 FPGA zybo vivado2018.3 SDK写ps部分 嵌入式开发
bili: PL与PS的交互方法 【Zynq与计算机视觉】1.2csdn:VIVADO SDK的使用 注:可以从4、导出SDK开始看首先打开SDK(见上面的博客)后 点击如下选项将会弹出这样一个目录 在目录的src文件夹下创建一个main.c文件 用于编写主函数结果如下:3. 写入mian函数文件代码
2023-09-21 23:17:51 252
原创 上篇文章的Markdown格式书写 (CSDN提供)
Ctrl/Command</kbd> + <kbd>Shift</kbd> + <kbd>U</kbd>插入代码:<kbd>Ctrl/Command</kbd> + <kbd>Shift</kbd> + <kbd>K</kbd>插入图片:<kbd>Ctrl/Command</kbd> + <kbd>Shift</kbd> + <kbd>G</kbd>标题:<kbd>Ctrl/Command</kbd> + <kbd>Shift</kbd> + <kbd>H
2023-09-21 16:56:11 40
原创 markdown语法
为帮助您在CSDN创作的文章获得更多曝光和关注,我们为您提供了专属福利:已注册且未在CSDN平台发布过文章的用户,9月1日—9月30日期间发布首篇文章可享大额首篇流量券扶持,且发布首篇文章后30日内,享连续每日流量券扶持;已注册且未在CSDN平台发布过文章的用户,在8月1日—8月30日期间发布过首篇,可自9月1日起,享连续30天每日流量券扶持;更多福利介绍详见https://mp.csdn.net/mp_blog/manage/traffic如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇
2023-09-21 16:49:29 53
原创 vivado2018.3 安装 板卡、网表文件配置 以及新建按键点灯工程(PL)
链接: Vivado18.3的安装 安装教程链接 zybo资料提取码:akak创建工程名 以及储存位置(不能有中文路径!!!)接着连点两下next 到达这个界面:能够找到zybo z7-20就是板卡文件添加的没问题 选择zybo z7-20 然后next 接着finish 新建工程成功如下所示 右键鼠标 添加module至block design 在此出问题 可以先进行综合(点击右边Run Synthesis)接着会出现 如下界面 要进行引脚的引出 选中引脚 ctrl+t生成输出产品
2023-09-21 16:41:47 774
原创 CubeMX创建工程,芯片因未选serial debug被锁住如何处理
首先进入CubeMX有如下界面,点击红色圈圈框着的;(野火开发板)接着在此处搜索芯片型号,指南者是F103VET6接着对其进行配置,点击System Core,对sys进行配置(很重要)选择 series debug......
2022-05-29 18:02:08 2704 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人