博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  FPGA

学习FPGA,我的心得与笔记
摘要:1、运输符 算术运算符(+,-,X,/,%) 赋值运算符(=,,=,>) 拼接运算符({ }) 阅读全文

posted @ 2015-10-23 14:15 期待1991 阅读(1954) 评论(0) 推荐(0)

摘要:这样写,会不会在阻塞赋值语句执行时,有其他always的时钟触发到来,会不会影响他们的触发了。 例如 always@(posedge clk)//--------(1) q=d; always@(posedge clk)//---------(2) sum=1'... 阅读全文

posted @ 2015-10-23 13:48 期待1991 阅读(251) 评论(0) 推荐(0)

摘要:记住:阻塞赋值就是它运行时,别人就不能运行,并且直接赋值到底 非阻塞赋值就是它运行时,不阻碍别人的运行,这里说不清(你懂的就OK) num1的过度期间,我们是不允许任何其他程序执行的,所以always块没有检测到变化,也就是always块并没有因为第二次的clk变化而被触发。 2、采用非阻... 阅读全文

posted @ 2015-10-23 13:35 期待1991 阅读(5652) 评论(0) 推荐(0)

摘要:1、赋值语句:assign{cout,sum}=a+b+cin;2、利用电平敏感的always块设计组合逻辑电路3、always块中如果含有局部变量,就必须在begin后加模块名,是必须加,同样的task中也是要这样。4、3-8译码器 assign out=1'b1<<in;//经典5、assig... 阅读全文

posted @ 2015-10-22 22:35 期待1991 阅读(476) 评论(0) 推荐(0)

摘要:1、每个always只有一个@(event-expression).2、always块可以表示时序逻辑和组合逻辑。3、带有posedge和negedge关键字的是表示沿触发的时序逻辑,没有的表示组合逻辑或者电平敏感的锁存器。或者两者都表示。4、每个在always快中赋值的信号必须定义成reg型或者整... 阅读全文

posted @ 2015-10-22 22:17 期待1991 阅读(443) 评论(0) 推荐(0)

摘要:一、状态机设计的关键是什么? 如何才能把一个电路系统抽象为一个或者多个相互配合嵌套的状态机和组合系统模块?是关键。二、状态机设计指导原则 1、使用独热码 2、采用case语句,加default,变量值位‘bx,因为这样编译的电路删除了多余的东东 3、应该加上异步复位端 4、如果设计必须有不... 阅读全文

posted @ 2015-10-22 20:23 期待1991 阅读(906) 评论(0) 推荐(0)

摘要:1、状态机的作用?是什么? 状态机,顾名思义就是用来描述状态的。完善一点就是在同一的时钟下。更准确说是一种verilogHDL编程思想。 例如我们每一个系统都可以分为好几种状态,如:开始,初始化,运行,状态1,状态2,状态3,状态4,结束。2、状态机结构 1)输出 <= 输入有关+当前状态 ... 阅读全文

posted @ 2015-10-22 19:25 期待1991 阅读(1112) 评论(0) 推荐(0)

摘要:1、前级(如另外一个芯片,PCB布线,驱动接口元件)输出的延迟是随机的,或者有可能变动,如何在后级完成数据的同步? 答:在前级后加入RAM或FIFO缓存在读取的方法。这种方法的关键是必须要有堆栈满和空的指示信号来管理数据的读入和读取,以防止数据的丢失。2、数据有固定的帧格式,数据的起始位置如何确定... 阅读全文

posted @ 2015-10-22 17:52 期待1991 阅读(1059) 评论(0) 推荐(0)

摘要:转载自:http://bbs.ednchina.com/BLOG_ARTICLE_3027549.HTM 有些时候我们用Quartus ii 打开不同版本创建的工程文件时,往往会出现下列提示 点yes后,quartus 会自动把文件转换成我们安装的版本。但是却出现了下图中糟糕的情况,我们发现中文注释 阅读全文

posted @ 2015-10-21 09:17 期待1991 阅读(13390) 评论(0) 推荐(0)

摘要:1、前级(如另外一个芯片,PCB布线,驱动接口元件)输出的延迟是随机的,或者有可能变动,如何在后级完成数据的同步? 答:在前级后加入RAM或FIFO缓存在读取的方法。这种方法的关键是必须要有堆栈满和空的指示信号来管理数据的读入和读取,以防止数据的丢失。2、数据有固定的帧格式,数据的起始位置如何确定... 阅读全文

posted @ 2015-10-18 16:33 期待1991 阅读(2195) 评论(0) 推荐(0)

摘要:引用自夏宇闻教授1、同步时序逻辑: 是指表示状态的寄存器组的值只能在唯一确定的触发条件发生改变。只能由时钟的正跳变沿或者负跳变沿触发的状态机就是一例,always@(posedge clk)。1.1同步时序逻辑的优点: 同步时序逻辑比异步时序逻辑稳定简单好多,由此我们有一个规定:用verilog... 阅读全文

posted @ 2015-10-18 15:01 期待1991 阅读(1211) 评论(0) 推荐(0)

摘要:1、如图是由开关逻辑控制的数据流动和计算逻辑结构示意图2、说明讲解(摘自verilog数字系统设计教程) 我们如果想把寄存器C的数据传给寄存器A,那么就需要使开关S2和S6打开,其他开关都关闭,这样在下一个时钟到来时,我们就可以完成任务了。同样任意寄存器间传递数据,保持时钟跳变与开关的完美匹配是完... 阅读全文

posted @ 2015-10-18 13:23 期待1991 阅读(381) 评论(0) 推荐(0)

摘要:1、如图是带有使能端和复位端的时钟同步8位寄存器组的逻辑和模块接口图2、verilog程序module register8(ena,clk,data,rst,out);input ena,clk,rst;input[7:0] data;output[7:0] out;reg[7:0] out;alw... 阅读全文

posted @ 2015-10-18 11:07 期待1991 阅读(617) 评论(0) 推荐(0)

摘要:1、如图这是电路逻辑结构图及其时序逻辑图:2、verilog程序:`define ON 1'b1`define OFF 1'b0wire LinkBusSwitch;wire[7:0] outbuf;wire[7:0] inbuf;inout[7:0] bus;assign bus=(LinkBus... 阅读全文

posted @ 2015-10-18 10:40 期待1991 阅读(1222) 评论(0) 推荐(0)

摘要:本随笔需要不断完善,姑且先写这一点点。。。。。。。1、所谓同步有限状态机是是电路状态的变化只能在同一时钟跳变沿时刻发生的逻辑电路。2、组合逻辑:组合逻辑是由与或非门组成的网络。3、时序逻辑:时序逻辑是有多个触发器和多个组合逻辑块组成的网络。 阅读全文

posted @ 2015-10-18 10:17 期待1991 阅读(1123) 评论(0) 推荐(0)

摘要:本文转自:http://www.cnblogs.com/linjie-swust/archive/2012/03/27/FPGA_verilog.html 在FPGA设计中经常使用到逻辑复制,逻辑复制也用在很多场合。1. 信号驱动级数非常大,扇出很大,需要增加驱动力 逻辑复制最常使用的场合时调整信... 阅读全文

posted @ 2015-10-17 21:46 期待1991 阅读(2437) 评论(0) 推荐(0)

摘要:如果某个组合逻辑电路中没有反馈或者迭代运算,那么我们就可以考虑流水线设计方法。 把组合逻辑分成延迟时间基本相等的小块,只要小块的组合逻辑的延迟小于时钟周期,整个组合逻辑的输入值每个时钟就可以变化一次,不会由于组合逻辑的延迟引起输出值的错误。 若没有这些寄存器来暂时保存局部组合逻辑的输出值,则... 阅读全文

posted @ 2015-10-17 21:29 期待1991 阅读(896) 评论(0) 推荐(0)

摘要:1、什么是流水线设计技术? 答:所谓流水线设计实际上是把规模较大、层次较多的组合逻辑电路分为几个级,在每一级插入寄存器组并暂存数据。 K级就是有K个寄存器组,从上到下没有反馈电路。2、流水线设计的深入讲解: 如图10.7 组合逻辑设计 ——> 流水线设计 纯组合逻辑需要时间:[max(... 阅读全文

posted @ 2015-10-17 20:43 期待1991 阅读(3098) 评论(0) 推荐(0)

摘要:1、什么是总线? 答:总线是运算部件之间数据流通的公共通道。2、总线的作用? 答:提高专用信号处理逻辑电路的运算能力和速度。3、总线与部件之间是怎么连接的? 答:各运算部件和数据寄存器组是通过带控制端的三态门与总线相连接的。通过控制端口电平的高低来确定某一时刻是哪一个部件使用总线。控制信号的相... 阅读全文

posted @ 2015-10-17 16:18 期待1991 阅读(2793) 评论(0) 推荐(0)

摘要:1、多路器简介简称:多路器功能:多输入 单输出 组合逻辑电路2、verilog代码实现:module Mux_8(addr,in1,in2,in3,in4,in5,in6,in7,in8,Mout,nCS);input[2:0] addr;input[width-1:0] in1,in2,in3,... 阅读全文

posted @ 2015-10-17 15:46 期待1991 阅读(3617) 评论(0) 推荐(0)