verilog
文章平均质量分 85
杰之行
我不知道将去何方,但我已在路上。——宫崎骏《千与千寻》
展开
-
《牛客刷verilog》Part II Verilog进阶挑战
《牛客刷verilog》Part II verilog 进阶挑战原创 2022-07-01 07:28:17 · 1030 阅读 · 0 评论 -
《牛客刷verilog》Part III Verilog企业真题
《牛客刷verilog》Part III VerilogVerilog企业真题原创 2022-07-03 08:37:18 · 1305 阅读 · 0 评论 -
《牛客刷verilog》Part I Verilog快速入门
- 之前刷过HDLbits上面的题目,点击链接可以查看详细笔记:verilog练习:hdlbits网站系列完结!- 最近又想刷一下牛客上面的题目,可以点击链接与小编一起刷题:[牛客刷题]- 小编不才,文中如有不当之处,可以在评论中互相交流。此处题目推荐看牛客的评论区,再提一嘴,注意积累自己的基本功`算法、设计模式、软件等`.....................原创 2022-06-24 07:23:05 · 2491 阅读 · 1 评论 -
FPGA疑难解决:Can‘t place multiple pins assigned to pin location Pin_101
前言在玩uart实验的时候,发现有这样的错误,之前一直以为是自己的代码设计有问题。今日在这里找到了答案,记录下:Error (176310): Can’t place multiple pins assigned to pin location Pin_101 (IOPAD_X34_Y18_N21)Error (176310): Can't place multiple pins assigned to pin location Pin_101 (IOPAD_X34_Y18_N21) Info (1原创 2020-11-26 15:53:51 · 5762 阅读 · 2 评论 -
uart_dpram:搭建串口收发与存储双口RAM简易应用系统
搭建串口收发与存储双口RAM简易应用系统实验目的: 以模块化设计为基础利用已编写的串口收发模块、按键模块以及RAM的IP模块来设计一个简易应用系统。通过串口发送数据到FPGA中,FPGA接收到数据后将数据存储在双口RAM的一段连续空间中,当需要时,按下按键0,则FPGA将RAM中存储的数据通过串口发送出去。00.功能模块:1.串口接收模块:uart_tybe_rx.v2.按键消抖模块:key_fliter.v3.RAM模块:dpram.v4.串口发送模块:uart_tybe_tx.v5.控制模原创 2020-11-26 16:37:01 · 1249 阅读 · 0 评论 -
《芯片改变世界-钱纲著》快速阅读
前言今天在图书馆找书时,发现新上架了一本书,如下图。那就随便翻翻看一下。豆瓣上有这样的评论值得推荐的科普读物,书从半导体的发明、到集成电路、芯片一路说起,并产生无数改变世界的产品。芯片从垂直式设计与制造一条龙,到ARM、 台积电、中芯国际的出现,为芯片设计授权、设计与制造分工铺平了道路,改变了世界格局。 半导体的科学家、发明家是伟大的,如基尔比、诺伊斯、摩尔等,还有一些优秀的企业,如贝尔实验室、德州仪器、仙童、英特尔、ARM、台积电、中芯国际等,他们都在推动人类前进的脚步。 世界无疑在进步,但在原创 2020-11-08 15:55:10 · 1364 阅读 · 0 评论 -
Verilog设计电路的一些关键点
时钟分频一般采用计数分频的办法,如何计算分频的计数值 N :如果是50Mhz分频1Khz,那么表达式为:1/50Mhz × N = 1/1KhzN = 50Mhz / 1Khz = 50000如果是50Mhz分频2hz,那么表达式为:1/50Mhz × N = 1/2hzN = 50Mhz / 2hz = 25000000...原创 2020-11-11 22:28:39 · 236 阅读 · 0 评论 -
uart串口发送模块功能实现及仿真
前言博客上面,人人都说uart简单,刚上手时,笔者也是一脸懵逼。只能假装uart协议确实简单,只不过。。。。(手动笑脸)00.串口发送原理图01.串口发送模块uart_byte_tx.vmodule uart_byte_tx( Clk ,//50M时钟 Rst_n ,//复位信号 send_en ,//发送使能信号 baud_set ,//波特率选项 data_byte ,//要发送的单字节数据 rs232_tx ,//要发送出去的单比特数据 rx_do原创 2020-11-24 10:40:13 · 2711 阅读 · 0 评论 -
FPGA应该掌握的小笔记
前言第一部分 基础普及为着将来,替自己积存美好的根基作为宝藏。——提摩太前书6章19节笔记1 :初识FPGAFPGA(Field Programmable Gate Array):可反复编程的逻辑器件ASIC(Application Specification Integrated Circuit):专用集成电路ASSP(Application Specific Standard Parts):专用标准产品FPGA、ARM、DSPFPGA供应商:Altera、Xilinx、Lattic原创 2020-11-10 17:01:25 · 745 阅读 · 3 评论 -
利用uart串口发送模块对uart串口接收模块进行仿真验证
前言uart的发送和接收已经告一段落。在数字世界中,传输的就是0和1,所以串口通信这种传输方式是非常常见的,看来也需要了解I2C和SPI。00.串口发送模块详见uart串口发送模块功能实现及仿真01.串口接收模块详见uart串口接收模块实现、并完成led板级测试02.串口接收模块仿真`timescale 1ns/1ns`define clock_period 20module uart_byte_rx_tb; reg Clk ; reg Rst_n ; re原创 2020-11-24 11:14:39 · 956 阅读 · 0 评论 -
FPGA学习——Modelsim仿真的小脚本run.do和force语句强制赋值
前言有个大神给我说,FPGA视频看完之后,不要写简单的代码,就有什么大项目,做一个就够了。但是,我还是想练一练。于是就写了一个简单的状态机,并且发现了一些有趣东西:run.do脚本和force强制赋值语句run.do脚本文件这个脚本文件,通过modelsim在run.do脚本文件夹中新建一个工程,直接在运行窗口输入命令:do run.do,直接生成如下的波形图,简化了好多操作。run.do文件上图中的8-18行可以直接删去,剩下的作为最最简单的模板文件。为了大家方便使用,可以复制粘贴下面的原创 2020-11-13 19:40:26 · 2783 阅读 · 0 评论 -
小梅哥的FPGA
小梅哥的FPGA1.科学FPGA开发流程设计定义设计输入分析和综合(Quartus初学)功能仿真(modelsim-altera)设计约束布局布线时序仿真(modelsim-altera)IO分配以及配置文件的生成配置(烧结FPGA)在线调试(…)设计定义:二选一多路器两个输入IO,可以是高电平,也可以是低电平,输入按键按下时,LED灯与a端口保持一致。输入按键释放时,LED灯与b端口状态保持一致。led_test.vmodule led_test(a,b,key_i原创 2020-11-09 22:28:23 · 5404 阅读 · 1 评论 -
自学前端设计——【开源骚客】FPGA超详细入门视频教程
00. FPGA开发软件的安装Quartus II 13.1ModelsimNotepad++Vim01. 我的第一个FPGA工程:点亮ledled.v//led.vmodule led( output wire led0 ,//ctrl+D快速复制当前行 output wire led1 , output wire led2 , output wire led3 );// E原创 2020-11-08 11:25:10 · 2747 阅读 · 0 评论 -
基于quartusII生成的IP核(dpram.v)的仿真验证
01.仿真平台dpram_tb.v`timescale 1ns/1ns`define clock_period 20module dpram_tb; reg clock; reg [7:0] data; reg [7:0] rdaddress; reg [7:0] wraddress; reg wren; wire [7:0] q; integer i; dpram dpram_inst( clock, data, rdaddress, w原创 2020-11-26 16:34:39 · 1178 阅读 · 1 评论 -
uart串口接收模块实现、并完成led板级测试
前言本实验quartusII中用的是EP4CE6E22C8;参考的是小梅哥uart串口接收,具有特色的就是采集6次,并取传输次数最多的那个值。(在理解代码的时候,这里是重点)00.串口接收的原理图01.串口接收主要模块uart_byte_rx.vmodule uart_byte_rx( Clk ,//50M时钟 Rst_n ,//复位 rs232_rx ,//串口将要发送的单比特 baud_set ,//波特率选择选项 data_byte ,//串口发送出原创 2020-11-24 10:11:45 · 942 阅读 · 1 评论 -
如何只用与非门、或非门构成或门、与门、非门?
前言今天看到通用门这个概念:通用门是可以实现任何布尔函数而无需使用任何其他门类型的门。与非门、或非门是通用门。下面就说说如何使用通用门构成与门、或门、非门(注意结合反演律)...原创 2020-11-24 21:35:03 · 34547 阅读 · 3 评论 -
verilog仿真工具iverilog+GTKWave使用教程
全平台轻量开源verilog仿真工具iverilog+GTKWave使用教程FPGA使用笔记安装iverilog:sudo apt-get install iverilog安装GTKWave:sudo apt-get install gtkwave详细的使用方法可以查看官方用户指南:https://iverilog.fandom.com/wiki/User_Guide...原创 2021-12-29 22:09:11 · 2041 阅读 · 0 评论 -
ModelSim、QuestaSim的学习路线推荐
推荐安装教程ModelSim的安装、破解、使用(缩放算法仿真)推荐视频教程《ModelSim(第2版)电子系统分析及仿真 官方视频教程》原创 2021-07-28 15:17:16 · 4906 阅读 · 1 评论 -
verilog练习:hdlbits网站系列完结!
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,今天终于完结了。题目很基本,值得训练!记忆最深刻的是,作者设计的独热码状态机和常规的有些差异!verilog练习:hdlbits网站上的做题笔记(1)verilog练习:hdlbits网站上的做题笔记(2)verilog练习:hdlbits网站上的做题笔记(3)verilog练习:hdlbits网站上的做题笔记(4)verilog练习:hdlbits网站上的做原创 2021-02-13 13:23:03 · 2336 阅读 · 2 评论 -
verilog练习:hdlbits网站上的做题笔记(1)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,这篇文章打算自己玩玩这个网站。1.Getting Started1.1 Getting StartedWe want to assign 1 to the output one.module top_module( output one );// Insert your code here assign one = 1'b1;endmodule原创 2021-01-27 16:18:42 · 7328 阅读 · 0 评论 -
verilog练习:hdlbits网站上的做题笔记(2)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。今天这篇文章,本来是接着昨天的《verilog练习:hdlbits网站上的做题笔记(1)》写的,结果快写完了,一刷新,全部没了,又重新来了一遍(手动狗头)!2.3 Modules: Hierarchy2.3.1 Modules(Module)module top_module ( input a, input b, output ou原创 2021-01-28 20:36:19 · 3618 阅读 · 1 评论 -
verilog练习:hdlbits网站上的做题笔记(3)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(2)》写的!2.5 More Verilog Features2.5.1 Conditional ternary operator(Conditional)找出四个数中最小值,提示的是五行代码!module top_module ( input [7:0原创 2021-01-29 18:35:07 · 2754 阅读 · 2 评论 -
verilog练习:hdlbits网站上的做题笔记(4)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(3)》写的!3. Circuits3.1 Combinational Logic3.1.1 Basic Gates3.1.1.1 Wire(Exams/m2014 q4h)module top_module ( input in, output原创 2021-01-31 13:25:07 · 5398 阅读 · 5 评论 -
verilog练习:hdlbits网站上的做题笔记(5)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(4)》写的!3.2 Sequential Logic3.2.1 Latches and Flip-Flops3.2.1.1 D flip-flop(Dff)A D flip-flop is a circuit that stores a bit and is up原创 2021-02-11 11:50:18 · 6399 阅读 · 1 评论 -
verilog练习:hdlbits网站上的做题笔记(6)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(5)》写的!3.2.5 Finite State Machines3.2.5.1 Simple FSM 1 (asynchronous reset)This is a Moore state machine with two states, one input,原创 2021-02-13 13:49:07 · 3567 阅读 · 1 评论 -
verilog练习:hdlbits网站上的做题笔记(7)!强烈推荐!
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(5)》写的!3.3 Building Larger Circuits3.3.1 Counter with period 1000(Exams/review2015 count1k)module top_module ( input clk, inpu原创 2021-02-13 09:04:21 · 1445 阅读 · 3 评论 -
verilog练习:hdlbits网站上的做题笔记(8)
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,推荐了一个可以练习的网站:hdlbits网站,那自己也玩玩这个网站。这篇文章,是接着《verilog练习:hdlbits网站上的做题笔记(6)》写的!4. Verification: Reading Simulations4.1 Finding bugs in codeThis 8-bit wide 2-to-1 multiplexer doesn’t work. Fix the bug(s).m原创 2021-02-13 13:13:07 · 2396 阅读 · 1 评论 -
verilog学习:加法器
备战秋招-手撕代码篇手撕代码verilog-任意整数分频异步FIFO(二)——手撕代码【老邱数电】半加器与全加器基础单片机功能这么强,为什么还要组合逻辑器件?数字电路中全加器是什么原理,专用的加法器芯片有哪些...原创 2021-01-25 10:06:24 · 20740 阅读 · 3 评论 -
verilog学习:使用VCS仿真验证一个全加器
前言:昨天对四位寄存器进行了验证,今天还想继续找个实例继续仿真一下,看能不能搞出波形文件。1.design全加器的设计代码见下://full_adder.vmodule full_adder(//module head; verilog-2001 formatinput wire a_in,input wire b_in,input wire c_in,//carry inoutput wire sum_out,output wire c_out//carrry out);//原创 2021-01-24 10:50:55 · 2908 阅读 · 0 评论 -
如何学习verilog,如何快速入门?
前言害怕真的有人不知道verilog是什么东西,于是就给把百度给搬来了!Verilog HDL是一种硬件描述语言,以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 Verilog HDL和VHDL是世界上最流行的两种硬件描述语言,都是在20世纪80年代中期开发出来的。前者由Gateway Design Automation公司(该公司于1989年被Cadence公司收购)开发。两种HDL均为IEEE标准。之前的文章《IC前端原创 2021-01-22 11:07:31 · 7917 阅读 · 1 评论 -
verilog学习:一个简单的入门verilog例子
前言之前的文章《如何学习verilog,如何快速入门?》中提到了verilog学习,只想传输一个观点:刚开始学习的时候,建议直接通过视频学习,当您有收获时,再去查阅书籍,把它们当成工具书。这篇文章就通过上一篇文章中提到的方法,演示一下!本文基于【开源骚客】FPGA超详细入门视频教程学习所得,简单做个笔记!00. FPGA开发软件的安装在高校,verilog的教学大都是基于FPGA学习的,所以学习资源很丰富,我们就可以从这个方向入手!而FPGA学习需要一个软件,下面这就请您去安装软件,前面提到原创 2021-01-24 08:52:10 · 9101 阅读 · 1 评论 -
verilog之时序逻辑电路(附代码)
前言刚学前端设计的时候,听到的就是组合逻辑、时序逻辑,很重要!但是究竟有什么用?到底怎么体现,没有多少老师可以明确指出来,当自己看的东西多了,就可以理解了,甚至可以得出自己的范式。到目前为止,要想掌握组合逻辑,就请先掌握本文列出的计数器、触发器、锁存器、寄存器分频器等简单的组合逻辑电路。1.触发器包括RS触发器、JK触发器、D触发器、T触发器。2.锁存器和寄存器锁存器的功能同触发器类似,但也有本质区别:触发器是在有效时钟沿到来时才发生作用,而锁存器是电平敏感的,只要时钟信号有效,锁存器就会起作用原创 2020-12-01 17:54:20 · 10577 阅读 · 1 评论 -
verilog之组合逻辑电路(附代码)
前言刚学前端设计的时候,听到的就是组合逻辑、时序逻辑,很重要!但是究竟有什么用?到底怎么体现,没有多少老师可以明确指出来,当自己看的东西多了,就可以理解了,甚至可以得出自己的范式。到目前为止,要想掌握组合逻辑,就请先掌握本文列出的编码器、译码器、数据选择器、加法器等简单的组合逻辑电路。1.编码器和译码器刚开始听verilog的时候,估计都听过3-8译码器,但是听过编码器吗?编码器和译码器可以将不同输入数据变换为不同的输出数据。编码器的数据输入比编码后的输出位数大,编码器常用来减少数据通道数目;而原创 2020-12-01 15:43:57 · 15560 阅读 · 0 评论 -
VerilogHDL(第2版)数字系统设计及仿真
前言学完了uvm、sv,通过ahb2apb桥的验证,对uvm框架有了较为深刻的认识,但是验证需要明白设计的一些东西。虽然之前学习过Verilog,但那真的只是走马观花,没有养成任何编写代码的习惯,故后面打算深入学习verilog和设计方面的基础。这篇博客将基于下面这本书进行总结。可能大多数是以问题的形式出现的,希望可以引起思考!第1章 Verilog HDL入门简介问题导入:Verilog HDL与数字电路有什么联系?使用Verilog HDL编写的代码能用在哪里?采用Verilog原创 2020-11-06 21:44:42 · 1460 阅读 · 0 评论 -
如何验证一个全加器?
写在最前面:昨天对四位寄存器进行了验证,今天还想继续找个实例继续仿真一下,看能不能搞出波形文件。1.design全加器的设计代码见下://full_adder.vmodule full_adder(//module head; verilog-2001 formatinput wire a_in,input wire b_in,input wire c_in,//carry inoutput wire sum_out,output wire c_out//carrry ou原创 2020-08-11 14:34:03 · 1997 阅读 · 0 评论 -
不同抽象级别的Verilog HDL模型
Verilog模型可以是实际电路不同级别的抽象。这些抽象的级别和它们对应的模型类型共有以下五种: 1) 系统级(system) 2) 算法级(algorithmic) 3) RTL级(RegisterTransferLevel): 4) 门级(gate-level): 5) 开关级(switch-level) 一个复杂电路的完整Verilog HDL模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干 个子模块构成。这些模块可以分别用不同抽象级别的Ver.原创 2020-08-10 21:11:49 · 1975 阅读 · 0 评论