
我的个人笔记
请叫我小怪物
努力用不为过,一只努力的汪
展开
-
Serial Flash Loader读写Flash存储芯片
主要通过调用Quartus的ip核Serial Flash Loader对M25P16的擦除,写和读因为Serial Flash Loader没有仿真库,所以验证数据是否写入和读出正确时,这里采用Quartus 自带的SignalTap II 在线调试验证的先来看一下Serial Flash Loader的调用 代码实现分为SPI和SPI_ctrl两个模块,Flash的擦除,写入,读写都在SPI_原创 2016-08-17 20:54:10 · 4439 阅读 · 0 评论 -
浮点数的定点化
FPGA(一般只能处理定点数):浮点数的定点化浮点数例子 : 2.918 12.918 3.1415926转成定点数要定义小数需求多少位,整数需求多少位例:16位的定点数(MAX:16’d32767 MIN:-32768) 3位整数位宽,12位的小数位,最高位的符号位 取低15位,其中第14,13,12位最大能表示7, 小数最大12位能表示的最大精度:1/4096=0.00244原创 2016-10-02 20:07:24 · 14384 阅读 · 7 评论 -
千兆网(1):IDDR 原语 RX 测试
//—————————————————— 说明: 板卡平台: 米联客 SPARTAN6 MiS607 PHY芯片手册:VSC8601XKN //——————————————————-RX接口输入信号信号名称 RX_CLK : 同步时钟125Mhz RX_DATA : 双沿数据 RX_DV : 数据原创 2016-10-08 15:55:30 · 5012 阅读 · 0 评论 -
跨时钟域时序的数据同步设计
频率相同,相位不同,建议用RAM 或FIFO进行多比特数据同步,没有同步使能的数据垮时钟域处理,使用fifo更简单,不然RAM处理更合理。 频率不同 ,建议选择异步FIFO做时钟域切换。关于fifo:同步FIFO:写时钟和读时钟为同一个时钟 异步FIFO:写时钟和读时钟为独立时钟 跨时钟域的数据信号需要用到异步FIFO,隔离时钟域,匹配读写速度FIFO写满和读空标志的产生:同步FIFO直接把读写原创 2016-10-06 20:07:16 · 4428 阅读 · 0 评论 -
Xilinx 中时钟的使用
没有PLL的时钟:输入时钟在没有连接到PLL中,那么一定在输入端链接BUFG, IBUFG #( .IOSTANDARD("DEFAULT") // Specify the input I/O standard ) IBUFG_inst ( .O(O), // Clock buffer output .I(I) // Clock buffer inp原创 2016-10-06 15:23:11 · 8577 阅读 · 0 评论 -
相位偏移的数据采集(原语调用)
Port Descriptions 方式一: At some point in a design, both signals must be brought into the same clock domain,typically C0. This can be difficult at high frequencies because the available time is only原创 2016-10-06 14:39:25 · 1633 阅读 · 1 评论 -
千兆网(2):数据的发送与接收测试
难点: 多时钟的切换 相位偏移的数据同步 原语的使用RTL结构视图与时钟网络工程文件的路径:其中RGMII_tx_ctrl模块为FPGA测试发送数据模块,依赖于仿真 RGMII_tx_ctrl的原语调用:module RGMII_tx_ctrl( input wire sclk,//125M inp原创 2016-10-09 21:00:19 · 3025 阅读 · 0 评论 -
CRC _Generator _32_8
记录一下crc32_8的代码 数据为8位 CRC校验位:32位推算流程: 推导过程比较复杂,这里贴一下data第7位数据校验后的crc_check 化简后的 代码实现//--------------------crc_check--------------------------------- always @(posedge clk or negedge rst_n) i原创 2016-09-05 19:57:23 · 1472 阅读 · 2 评论 -
Modelsim仿真的Run.do脚本模板
#QUARTUS #此处是注释#退出当前仿真功能quit -sim#清楚命令行显示信息.main clearvlib ./libvlib ./lib/workvmap work ./lib/work#XXX_tb仿真文件名vlog -work work ./XXX_tb.v#src是XXX.v的文件夹vlog -work work原创 2016-08-08 23:28:02 · 3693 阅读 · 0 评论 -
基于verilog的EEPROM读写
I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL这里以一个byte的读写为例时序图:写时序 读时序 通过时序图可知,IIC读的时候需要先完成写的控制字和地址的命令,因为读的部分和写的部分有重复,所以这里的IIC控制模块我使用状态机来完成的,划分状态时,写时序的start—ack_low_addr这段为复用状态控制命令和状态的定义//instruparameter原创 2016-08-28 22:52:37 · 8581 阅读 · 4 评论 -
HMAC SHA1实现
使用verilog语言,架构如下,手册:rfc2202, rfc3174enmm…有什么疑问留言吧不想码字了。。。。。原创 2019-03-29 14:26:07 · 2737 阅读 · 0 评论