FPGA
IC宇文老师
宇文:机械锤子理工男转IC前端开发工程师之路双非普通本科机械学士,双非普通研究生机械硕士,转行IC芯片开发,0基础硬拼IC岗。现转行成功,特整理分享《芯片开发工程师自学之路》,包括必学的linux操作、Verilog语言学习、各种相关工具使用如VCS和VERDI、大小项目test、笔试面试技巧等多方面成长经验交流。
展开
-
FPGA——EEPROM原理——使用手册翻译(1)
EEPROM (Electrically Erasable Programmable read only memory),带电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。 EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。EEPROM_24AA64/24LC6464K I2C™CMOSSerial EEPROM1.0 电气特性表1-1驱动选择表型...原创 2018-05-18 18:27:02 · 4773 阅读 · 0 评论 -
FPGA——zhixin培训 Day_09——二进制转BCD+练习(非常重要)
A、二进制转BCD一、设计背景:1. 二进制二进制中只有 0 和 1 两个状态,如开关的接通和断开,晶体管的导通和截止、磁元件的正负剩磁、电位电平的低与高等都可表示 0、1 两个数码。使用二进制,电子器件具有实现的可行性。 电子器件中,所有的数据都是用二进制来表示的。2. BCD 码BCD 码(Binary-Coded Decimal )亦称二进码十进数或二-十进制代码。用 4...原创 2018-08-05 18:07:48 · 1628 阅读 · 2 评论 -
FPGA——zhixin培训 Day_08——边沿检测
一、设计背景:边沿检测电路:如上图,为我们待检测信号,可以看出边沿的特性:边沿两侧信号的电平发生了变化。红色为上升沿,绿色为下降沿。上升沿之前电平为低,上升沿之后电平为高。下降沿之前为电平为高,下降沿之后电平为低。二、设计需求:设计边沿检测电路,可检测上升沿和下降沿。三、设计方案:实序图:五、代码module check_edge(clk,rst_n,s...原创 2018-08-05 00:02:36 · 303 阅读 · 0 评论 -
FPGA——zhixin培训 Day_07——按键消抖
A.按键消抖一、设计背景:在用机械按键进行操作时候,按键过程会有抖动,即出现不稳定状态,因此需要按键消抖。一般经验值是10ms。二、设计需求:设计使用尖峰脉冲信号作为按键稳定的标志信号(flag),通过仿真看到按键消抖的功能。三、设计方案:五、代码状态机:六、仿真验证:编写tb文件模拟按键,设置cnt_num为4。即/*cnt_num(4...原创 2018-08-04 23:55:38 · 376 阅读 · 0 评论 -
FPGA——zhixin培训 Day_06——数码管(2)+电子时钟
A.数码管一、设计背景:数码管可做电子时钟,可显示参数等。二、设计需求:设计六个数码管的驱动电路,使六个数码管能够循环显示“HELLO.”。架构图:四、代码: 顶层模块:例化三个子模块Freq是产生1KHz的时钟,来刷新数码管,使六个数码管一起亮;Shift_data1用来移位操作,使显示的值循环显示。该模块中移位需要按要求1s移位一次,因此需要产生...原创 2018-08-04 23:47:39 · 580 阅读 · 0 评论 -
FPGA——zhixin培训 Day_04——ROM+DDS
一、设计背景:设计一个rom控制器,初始化文件能够存入数据(0-255),存入rom,最终读出数据(0-255).二、设计需求:将mif文件存入ROM存储器。三、架构图四、代码:(1)新建工程;(2)新建一个mif文件如下图所示;该文件存储我们需要存的数据。然后选择mif文件的大小;得到一张空白的表在该表中填入所要存储的内容如上所示在...原创 2018-07-29 18:05:55 · 208 阅读 · 0 评论 -
FPGA——zhixin培训 Day_03——任意奇偶分频+自动售货机
A、任意奇偶分频设计背景:上一篇已讲分频,但其为偶数分频,占空比只为1:1;有时候需要奇数分频,本文所介绍的就是任意奇偶分频。二、设计需求:利用verilog语言编写代码使其可任意分频。如奇数分频:实现5分频;高电平占用3个时钟周期;低电平占用两个时钟周期。系统架构图:思路与方案: 四、代码: 0 module divide(clk,rst...原创 2018-07-29 17:57:35 · 347 阅读 · 0 评论 -
FPGA——zhixin培训 Day_02——分频+流水灯
A分频:设计背景:本开发板的时钟是50MHz晶振的时钟;但一般运行所需程序需要其他时钟实现;因此需要分频。分频可以用计数器实现,也可以用调用IP核的方式。二、设计需求:利用开发板上的50MHz时钟通过计数器的形式进行分频。三、代码:B、流水灯一、设计需求:利用开发板上的4个灯,实现流水灯,流水间隔1s一次(支持从左往右或从右往左)【涉及到分频】二、设计原理图...原创 2018-07-25 22:34:16 · 1394 阅读 · 0 评论 -
FPGA——zhixin培训day_01_按键点灯
一、设计背景:LED灯可作为各种控制的指示灯;按键也可作为控制的一小部分;因此需要练习灯的点亮和按键作为输入对某部件进行控制。二、设计原理: 查找开发板原理图:LED灯由图可知为低电平点亮。 按键由图可知为低电平为按键导通。三、设计需求:利用开发板上的LED灯和按键,完成按下灯亮,抬起灯灭。四、思路与方案:开发板四个按键和四个灯;按...原创 2018-07-24 17:49:13 · 704 阅读 · 0 评论 -
FPGA——EEPROM原理——使用手册翻译(2)读与写
书接上文:6.0写操作6.1字节写从主控码开始,控制码(4位),芯片选择(3位),R/W位(这是一个逻辑低)被主发射机控制在总线上。这表明在第9个时钟周期中,地址高字节将跟随在它产生一个应答位之后的地址。因此,由主机传输的下一个字节是单词地址的高阶字节,并将写入24xx64的地址指针中。下一个字节是最不重要的地址字节。在接收到来自24xx64的另一个确认信号后,主设备将把数据字发送到地址内存位置。...原创 2018-05-18 18:56:51 · 2170 阅读 · 0 评论 -
FPGA——zhixin培训 Day_05——数码管(1)
一、设计背景:数码管可做电子时钟,可显示参数等。二、设计需求:设计一个数码管的驱动电路,使任意一个数码管能够显示出任意一个数字(0-F); 设计六个数码管的驱动电路,使任意六个数码管能够显示180801(0-F); 设计六个数码管的驱动电路,使任意六个数码管能够循环显示“180801”(0-F)。设计一: 架构图: 设计二(方法一): ...原创 2018-08-02 22:00:51 · 253 阅读 · 0 评论