- 博客(16)
- 资源 (26)
- 问答 (20)
- 收藏
- 关注
原创 连续系统传递函数,与离散化Z变换传递函数仿真对比中常见的几个问题
文章目录1 问题重现2 主要问题解决3连续系统转离散化需要注意的问题1 问题重现相信做过连续系统传递函数,转成离散系统传递函数的同学,很多都可能遇到这样一个问题:相同的数据raw_data激励,在连续系统传递函数TF的处理后,数据很理想;但由于连续系统数据量太大,采样后形成rawsample_data,TF也根据下面的拉氏变换-Z变换表,进行Z变换,形成离散系统传递函数TF_d。然后无论是把 raw_data 还是 rawsample_data,在simulink中经过TF_d处理的数据结果和之前大不一
2020-08-28 00:25:00 3722 2
原创 FPGA设计中常用数据缓存IP总结(FIFO、RAM)
FPGA设计中,常用到的数据缓存IP有FIFO和RAM,其中RAM又分单口RAM、伪双口RAM、双口RAM。单口与双口的区别在于,单口只有一组数据线与地址线,因此读写不能同时进行。而双口有两组数据线与地址线,读写可同时进行。FIFO读写可同时进行,可以看作是双口。双口RAM分伪双口RAM(Xilinx称为Simple two-dual RAM)与双口RAM(Xilinx称为true two-dual RAM)。伪双口RAM,一个端口只读,另一个端口只写;而双口RAM两个端口都可以读写。FIFO也是一个
2020-08-27 20:35:26 2626
原创 格雷码、独热码
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。 [2] 在数字系统中,常要求代码按一定顺序变化。例如,按自然数递增计数,若采用8421码,则数0111变到1000时四位均要变化,而在实际电路中,4位的变化不可能绝对同时发生,则计数中可能出现短暂的其它代码(1100、1111等)。在特定情况下可能导致电路状态错误或输入错误。使用格雷码可以避免这种错误。格雷码有多种编码.
2020-08-25 20:46:40 3099
原创 ROM和RAM
ROM、RAM、DRAM、SRAM和FLASH的区别解析1 ROM2 RAM3 Flash1 ROMROM, read only memory 只读存储器,对应电脑里的硬盘。ROM 是 ROM image(只读内存镜像)的简称,常用于手机定制系统玩家的圈子中。 一般手机刷机的过程,就是将只读内存镜像(ROM image)写入只读内存(ROM)的过程。 常见的 ROM image 有 img、zip 等格式,前者通常用 fastboot 程序通过数据线刷入(线刷),后者通常用 recovery 模式从
2020-08-24 12:38:05 678
原创 JTAG协议及接口的简要了解
JTAG(Joint Test Action Group,联合测试工作组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。具有JTAG口的芯片都有如下JTAG引脚定义: TCK——测试时钟输入; TDI——测试数据输入,数据通过TDI输入JTAG口;TDO——测试数据输出,数据通过TDO从JTAG口输出; TM
2020-08-17 19:33:27 4350
原创 《深入浅出玩转FPGA》笔记1~3
文章目录1 初识FPGA1.1 FPGA与ASIC1.2 FPGA与CPLD1.3 Altera与Xilinx1.4 Verilog与VHDL1.5 FPGA基本结构2 应用领域2.1 片上系统3 开发流程该部分是书的第一部分:基础普及。主要包括对FPGA的初步认识、应用领域和开发流程的简要介绍。1 初识FPGA1.1 FPGA与ASICFPGA与ASIC( Application Specific Integrated Circuit,特殊应用集成电路 )的区别:ASIC是定制IC,内部功能以
2020-08-17 19:19:57 334
原创 simulink中固定大小矩阵和可变大小矩阵创建的几个陷阱
文章目录1 固定大小矩阵的创建2 可变大小矩阵的创建Simulink进行数据处理时经常需要在matlab function里面创建矩阵,但一不留神就会出现创建的矩阵维度错误的问题,有一些比较明显的错误根据提示就知道如何修改,但有一些不会给出明显的提示,如下面这个报错,错误认为input SFunction的输入维度无效,这种bug不可能会跑到底层的input SFunction下面去debug,只能在你的程序里解决。Error in port widths or dimensions. Invalid
2020-08-15 11:09:58 5088 3
原创 m脚本暂停、跳出、交互和终止的几个函数
整理一下记录几个常见的控制程序走停的函数pause、input、error、break、quit、exit、return。同时,m脚本可以实现对多个simulink模型仿真的控制,比如暂停、仿真一个步长、终止等等。这一点如果手动通过点击多个模型让它们仿真是做不到的,我刚开始还以为Simulink一次只能仿真一个模型呢。。。1、pause在执行脚本文件过程中可以让脚本暂停;用法:①pause:暂停,等待用户按下任意键继续;②pause(n):暂停n秒,然后继续。2、inputinput()也可
2020-08-14 20:52:27 2398 1
原创 Simulink仿真中如何实时存储多维矩阵
工作中会用到Simulink仿真实时存储多维矩阵的需求,我在网上看了很多文章,都没有很好地解决这个问题,也可以看出来很多人遇到过这个问题。注意:我们是想在实时仿真中存储数据,不是仿真结束后看数据,所以to workspace/to file这些方法是不行的。后续随着工作经验,可能会探索到其他的方法实时存储数据。目前想到两种方法,一种是利用delay、cnt做数据的延时存储和赋值;另一种也是这种思路,但是使用了persistent类型。方法1simulink模型如下,其中data是输入,y是输出,p是计
2020-08-14 14:59:37 5058 1
原创 Matlab环境下,图像序列与视频双向转换方法
文章目录1 图像序列转视频2 视频转图像序列图像视频处理中经常需要用到图像序列转化成视频,或者视频转化成图像序列。将两个常见过程在Matlab环境下进行了实现,代码如下。由于只涉及图片、视频的读写,相对简单不再讲解。1 图像序列转视频clearclcframesPath = 'cell7\';%图像序列所在路径,同时要保证图像大小相同 videoName = ['demo',strcat(int2str(7),'.avi')];%表示将要创建的视频文件的名字 fps = 7; %帧率
2020-08-06 22:26:26 433
原创 Simulink中HDL Workflow Advisor解读
文章目录1 HDL Workflow Advisor代码生成流程2 HDLWorkflow Advisor步骤细节3 HDL生成过程中的常见bug3.1 HDL求解器类型和支持的数据精度1 HDL Workflow Advisor代码生成流程2 HDLWorkflow Advisor步骤细节3 HDL生成过程中的常见bug这部分记录生成 HDL 代码的过程中经常遇见的bug,有一部分bug和解决方案来自于Mathworks官网中对于该部分的讨论。3.1 HDL求解器类型和支持的数据精度HDL
2020-08-06 13:50:29 1217
原创 经典图像/视频缩放算法原理及MATLAB\Simulink实现
经典图像/视频缩放算法原理及MATLAB\Simulink实现1 图像/视频缩放介绍2 图像缩放的经典算法2.1 最近邻插值法2.2 双线性插值法3 图像缩放算法的MATLAB实现3.1 最近邻算法实现3.2 双线性插值算法实现4 视频无极缩放的Simulink实现1 图像/视频缩放介绍图像缩放,顾名思义是对图片进行缩小和放大。由于矢量图缩放过程不失真,因此这里所说的图像缩放指的是像素图。视频是图像的时间序列,因此视频缩放就是对每帧图像的缩放,背后本质上还是图像缩放。图像/视频缩放的作用不言而喻。比
2020-08-05 18:47:41 3616
原创 FPGA Design with MATLAB, Part 5: Generating and Synthesizing RTL
这份学习资料来自MATLAB官网,主要介绍如何利用MATLAB/Simulink生成HDL代码,以用于FPGA或者ASIC硬件。下面为学习过程中对教程的翻译,以及学习中的心得。内容在视频的第五部分,我们将生成和综合优化后的代码。我们将按照以下步骤生成HDL代码。第一步,我们将检查模型代码生成的兼容性,然后启动HDL Workflow Advisor生成HDL代码。脉冲检测系统或者DUT包含产生HDL代码的算法。我们将保存并重命名模型,检查脉冲检测子系统的任何不兼容性。在HDL Code选项下面右键D
2020-08-04 14:36:59 383
原创 FPGA Design with MATLAB, Part 4: Converting to Fixed Point
这份学习资料来自MATLAB官网,主要介绍如何利用MATLAB/Simulink生成HDL代码,以用于FPGA或者ASIC硬件。下面为学习过程中对教程的翻译,以及学习中的心得。内容在视频系列的第四部分中,我们将展示如何将Simulink模型转换为定点数据类型,并将Simulink定点模型与MATLAB golden reference进行比较。MATLAB和Simulink中的数字默认为双精度浮点数据类型,即64位。我们将转换为定点数据类型和操作,以减少硬件资源和计算步骤。在MathWorks中,定点
2020-08-04 11:21:34 304
原创 FPGA Design with MATLAB,Part 3: Architecting Efficient Hardware
这份学习资料来自MATLAB官网,主要介绍如何利用MATLAB/Simulink生成HDL代码,以用于FPGA或者ASIC硬件。下面为学习过程中对教程的翻译,以及学习中的心得。内容第一个视频简要介绍了HDL 自学教程;第二个视频建立了脉冲检测算法的Simulink模型实施过程。在这一部分中,我们将准备Simulink模型用于代码生成,并重点介绍优化硬件微架构的技术。我们重命名并保存模型,然后再命令行输入HDLSETUP,该命令可以确认几种模型参数以用于HDL代码生成。其中一个参数,sample ti
2020-08-04 10:59:53 211
原创 FPGA Design with MATLAB,Part 2: Modeling Hardware in Simulink
这份学习资料来自MATLAB官网,主要介绍如何利用MATLAB/Simulink生成HDL代码,以用于FPGA或者ASIC硬件。下面为学习过程中对教程的翻译,以及学习中的心得。内容在第一个视频,我们已经讨论了MTALAB\Simulink的作用,并且简要介绍了HDL 自学教程的概览。在这个视频中,我们将为脉冲检测算法搭建Simulink模型,并且和金边参考线做对比。在建立模型之前,我们先运行脉冲检测算法,这会在MATLAB的工作区间初始化全部变量,这些变量在建模型的过程中会全部导入模型。为了表示模
2020-08-04 10:28:52 286
plot_function.zip
2020-02-13
传递函数响应.zip
2020-02-13
EasyX2018春分版软件
2018-04-09
仅5M小巧好用的PDG文件阅读器
2017-09-25
simulink中如何把仿真中实时计算的像素点及对应坐标显示出来,最后应显示一张照片?
2020-08-11
C++字符串处理:为何不能去掉s3=s1;这一句代码
2018-11-29
1020 月饼 ,测试案例有三个不能通过,提示错误,求帮助!
2018-11-22
1013 数素数 测试点4通过不了,请教有何问题
2018-11-21
PAT乙级1079测试点2/3/4提示答案错误,有哪些情况未考虑到?
2018-11-18
1072 开学寄语,AC时三个测试都通不过,提示格式错误,答案错误,求助
2018-11-14
1066 图像过滤,AC时为什么提示超时?
2018-11-12
PAT乙级1059 C语言竞赛 测试点2通过不了,求助呀
2018-11-11
PAT1045运行超时我知道原因,还提示格式错误是哪里有问题
2018-11-04
1034 有理数四则运算 测试点2通过不了,求助
2018-10-31
1070 结绳 代码疑惑,代码意思是一样的呀
2018-10-28
1028 人口普查最后一个测试点通过不了
2018-10-28
1025 反转链表 ,提交没有AC,单独测试倒是可以
2018-10-26
PAT1005 继续(3n+1)猜想,提示Segmentation Fault
2018-10-25
PAT1024提交时出现问题,提示Segmentation Fault。请帮忙解决
2018-10-24
PAT1020月饼,为什么市场需求need每次还都是20 呢?
2018-10-23
PAT1019 数字黑洞 提交时Time Limit Exceeded
2018-10-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人