自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 //synophys parallel_case和//synophys full_case

//synophys parallel_case和//synophys full_case是综合指令,用来控制综合器把case语句综合成什么硬件逻辑。1、//synophys parallel_caseeg:case (CASE_SIGNAL) begin CASE1: A = B; CASE2: A = C; default: A = D; endendcase在这个case语句中,如果没有//synophys p.

2020-06-30 20:12:19 432

原创 Vivado中FFT9.1 IP核的使用(2)——在线修改变换长度

Vivado中FFT9.1 IP核的使用(1)中已经介绍了最简单的FFT操作方式:即固定变换长度,仅仅控制少量控制信号: s_axis_config_tdata // input,配置数据 s_axis_config_tvalid // input,配置数据有效信号 s_axis_data_tdata // input ,输入数据 s_axis_data_tvali...

2020-06-30 10:17:05 3565

原创 Vivado中FFT9.1 IP核的使用(1)

目录1、xilinx FFT IP介绍2、FFT IP接口介绍3、xilinx FFT IP的仿真测试4、参考:1、xilinx FFT IP介绍1)正向和反向复数FFT,运行时间可配置。2)变换大小N = 2m,m = 3 – 163)数据采样精度bx = 8 – 344)相位系数精度bw = 8 – 345)算术类型:无标度(全精度)定点 定标定点 浮点数6)定点或浮点接口7)蝴蝶后舍入或截断8)Block RAM或分布式RAM,用于数据和相位因

2020-06-29 17:25:24 7601 12

原创 FPGA笔试面试专题——不用状态机实现序列检测

之前接触的序列检测电路都是通过状态机实现的,其实序列检测也可以通过移位寄存器和比较器很方便的实现:移位寄存器用于存储输入;比较器用于比较输入和待检测序列是否一致,产生输出;module seqdet( input wire x, input wire clk, input wire rst, output wire z, output reg [4:0] q); assign z = (q == 5'b10010) ? 1'b1:1'b0;

2020-06-28 17:58:23 5469

原创 FPGA设计中如何才能不出现Latch锁存器

结论:并不是写了IF不写ELSE或者CASE中不加default就产生Latch,也不是说加上else就不产生Latch。看当前时刻数据会不会保持(a=a),如果有数据的保持就会产生锁存器。仿真:设计1:module latch_test(input sel,input a,output reg b );always@(*)begin if(sel) b = a;endendmodule设计2:module latch_.

2020-06-25 14:54:06 481

原创 FPGA设计流程

1、设计输入,使用HDL语言编写代码;2、功能仿真(前仿真)对设计的电路进行功能仿真,检查设计和逻辑错误。尽量避免反工,越是设计后期,出现问题越难改正,代价越大;3、综合将较高层次的系统行为设计翻译为门级逻辑电路。即将设计功能映射到实际硬件上。4、优化对综合后的结果,根据布尔方程功能等效的原则,用更小更快的综合结果代替一些复杂的单元,这是减小电路规模的一条必经之路。5、布局布线6、时序仿真(后仿真)根据布局不布线结果,进一步验证电路时序7、生产...

2020-06-25 14:37:16 296

转载 CAM内容寻址存储器

   CAM是一种特殊的存储器。所谓CAM,即内容寻址存储器。CAM存储器在其每个存储单元都包含了一个内嵌的比较逻辑,写入CAM的数据会和其内部存储的每一个数据进行比较,并返回与端口数据相同的所有内部数据的地址。概括地讲,RAM是一个根据地址读、写数据的存储单元,而CAM和RAM恰恰相反,它返回的是与端口数据内容相匹配的地址。CAM的应用也比较广泛,比如在路由器中的地址交换表,CPU的Cache控制器(Tag阵列)等。 CAM工作原理:  ...

2020-06-24 16:05:46 3122 1

原创 FPGA芯片内两种存储器资源

FPGA芯片内有两种存储器资源:一种叫BLOCK RAM,另一种是由LUT配置成的内部存储器(分布式RAM-Distribute RAM)。BLOCK RAM由一定数量固定大小的存储块构成的。使用BLOCK RAM资源不占用额外的逻辑资源,并且速度快。但是使用的时候消耗的BLOCK RAM资源是其块大小的整数倍。分布式RAM是用逻辑资源搭起来存储资源,非常占用内部资源。...

2020-06-24 15:56:12 5187

原创 FPGA面试专题——系统最高速度计算(最快时钟频率)和流水线设计思想:

目录一、STA分析基础二、系统时钟速度提升策略——流水设计三、补充——STA保持时间分析四、参考一、STA分析基础数据传输延时 <= 时间传输延时 + 时钟周期 - 建立时间Tclk1 + Tco + Tcomb_logic + Tnet <= Tclk2 + Tperiod - Tsu即:Tskew+ Tperiod - Tsu - Tco - Tcomb_logic - Tnet >= 0进一步得到时钟周期要求:Tperiod >= T

2020-06-24 15:40:26 3270

原创 Matlab按照二进制读写txt文件

1、Matlab按照二进制读txt文件data = textread('...\file.txt','%s');%二进制读2、Matlab按照二进制写txt文件fid = fopen('...\file.txt','wb');%按照二进制写打开文件fprintf(fid,'%s\r\n',data(i));%将data的某一位写入文件,写入以后换行fclose(fid);%关闭文件3、Matlab中十进制与二进制转换data_b = dec2bin(data);%十进制到二进

2020-06-24 15:02:12 3996 3

原创 Verilog中常见文件操作($readmemb,$fopen,$fwrite,$fclose)

目录一、$readmemb/$readmemh二、$fopen,$fwrite,$fclose三、仿真验证四、参考一、$readmemb/$readmemh$readmemb和$readmemh用来从文件中读取数据到存储器中。读取的内容只包括:空白位置(空格、换行、制表格(tab和form-feeds),注释行、二进制或十六进制的数字。数字中不能包含位宽说明和格式说明,其中readmemb要求每个数字是二进制数,readmemh要求每个数字必须是十六进制数字。数字中不定值x.

2020-06-23 18:02:29 29433 8

原创 FPGA面试笔试专题——一些基础电路设计

1、全加器设计全加器考虑进位输入与进位输出,以4位全加器为例:module full_add(input rst_n,input clk,input [3:0]a,input [3:0]b,input cin,output reg [3:0]sum,output reg cout);always@(posedge clk or negedge rst_n)begin if(!rst_n) begin {cout,sum} &lt

2020-06-22 11:12:28 1091

转载 环形、扭环、LFSR计数器

目录环形计数器扭环计数器线性反馈移位寄存器从这个题目来谈起今天的话题:移位寄存器由8级触发器构成,则构成的扭环计数器有多少个有效状态?环形计数器?线性反馈移位寄存器?环形计数器规则:环形计算器的规则是利用一个移位寄存器右移实现,N位的环形计数器能计数的个数为N;也就是说,有N个有效的状态;如开头所说的题目,8级移位寄存器...

2020-06-22 10:26:33 8760

原创 Verilog中Case语句

case

2020-06-22 09:59:50 72258 6

转载 Verilog基础 门级建模

与门(and)和或门(or):与门、或门都有一个标量输出端和多个标量输入端。门的端口列表中的第一个端口必是输出端口,其后为输入端口。当任意一个输入端口的值发生变化时,输出端的值立即重新计算。verilog中可以使用的属于与/或门类的术语包括:and  nand  or  nor  xor  xnor例:与门/或门的实例引用wire OUT,IN1,IN2;and a1(...

2020-06-21 11:25:27 1434

转载 DRAM的三种刷新方式的刷新周期问题

定时刷新的原因:由于存储单元的访问是随机的,有可能某些存储单元长期得不到访问,不进行存储器的读/写操作,其存储单元内的原信息将会慢慢消失,为此,必须采用定时刷新的方法,它规定在一定的时间内,对动态RAM的全部基本单元电路必作一次刷新,一般取2ms,即刷新周期(再生周期)。刷新与行地址有关。刷新时一行行进行的,必须在刷新周期内,由专用的刷新电路来完成对基本单元电路的逐行刷新,才能保证DRAM内的信息不丢失。通常有三种方...

2020-06-18 23:16:10 8781 2

空空如也

空空如也

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

TA关注的人

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