Altera SOPC FrameBuffer系统设计教程】的更多相关文章

Altera SOPC FrameBuffer系统设计教程 小梅哥编写,未经授权,严禁转载或用于任何商业用途 在嵌入式系统中,LCD屏作为最友好的人机交互方式,被大量的应用到了各个系统中.在基于ARM处理器的系统中,应用更是非常广泛.FPGA作为广义嵌入式系统的一员,自然也有很多时候需要来驱动显示屏显示一些内容,例如经常有需求要用FPGA来做液晶测试架,做显示器驱动测试卡.很多学习了FPGA的朋友都知道,FPGA驱动VGA显示器是比较轻松的,几乎每个板卡商提供的资料中都提供了有诸如显示彩条,显示…
Altera SOPC嵌入式系统设计教程 第1章 概述 SOPC(System On Programmable Chip,可编程的片上系统)是Altera公司提出来的一种灵活.高效的SOC解决方案.它将处理器.存储器.I/O口.LVDS.CDR等系统设计需要的功能模块集成到一个可编程器件上,构成一个可编程的片上系统. 1.1 SOPC及其技术 现今,可将SOPC视为是基于FPGA解决方案的SOC.与ASIC的SOC解决方案相比,SOPC系统及其开发技术具有更多的特色,也有多种途径可构成SOPC方…
Verilog数字系统设计教程(第2版).pdf https://github.com/shigh1005/pdf_book <Linux设备驱动开发详解:基于最新的Linux 4.0内核.pdf> <Linux设备驱动开发详解(基于最新4.0内核)>前言 LinuxDev 2015-04-28     阅读数:1056 Linux从未停歇脚步.Linus Torvalds,世界上最伟大的程序员之一,Linux内核的创始人,Git的缔造者,仍然在没日没夜的合并补丁,升级内核.做技术…
下图是比较传统的系统设计开发板的设备图 由于元器件比较多,成本,复杂性和功耗都比较高,所以需要一种新的方案来降低成本和复杂性. ALTERAL  就提供了一种SOPC解决方案,将系统的I/O.CPU和DSP集成在了FPGA内部,降低了开发的成本. 对于FPGA内部,ALTERA集成 了一个可开发的32位RISC软核处理器NIOS II,其器件设计具有以下特点: NIOS II 处理器和所用的外设都是使用硬件描述语言编写: 可以布置在ALTERA全系列的FPGA上: 使用quartus II 进行…
这本书的确是一本很经典的关于verilog语法和一些基本概念的书籍,后面的例子也很好,但是对于初学者来说,我们需要掌握的是语法和一些基本的概念. 刚一开始这本书的中文语法有点不是很通顺,但是越是往后,就会发现还是很好的. 总体来说就是比较适合初学者的学习.…
[推荐图书]+ 基于Nios II的嵌入式SoPC系统设计与Verilog开发实例+C#入门经典等 3赞 发表于 2016/7/4 21:14:12 阅读(1921) 评论(3) 初次接触FPGA,到现在也有四年多了,当时读大二,暑假在学校准备光电设计竞赛,指导老师让用单片机做,前期向我们推荐FPGA,希望我们有时间去学学FPGA,记得当时买了块黑金核心板,下载了特权同学的<深入浅出玩转FPGA>视频教程,买了特权同学写的<深入浅出玩转FPGA>和夏宇闻老师编写的<Veril…
九.基于串口猎人软件的串口示波器 1.实验介绍 本实验,为芯航线开发板的综合实验,该实验利用芯航线开发板上的ADC.独立按键.UART等外设,搭建了一个具备丰富功能的数据采集卡,芯航线开发板负责进行数据的采集并将数据通过串口发送到PC机上,PC端,利用强大的串口调试工具--串口猎人,来实现数据的接收分析,并将数据分别以波形.码表.柱状图的形式动态显示出来,以让使用者能够直观的看到ADC采集到的信号细节.同时,用户也可以使用串口猎人通过串口给下位机(FPGA)发送指令,下位机将对接收到的指令进行解…
原作者:http://hi.baidu.com/zhoubin7020 作为FPGA新人常常在论坛上问,用什么语言啊,用什么软件啊,用那个公司的芯片等问题.我个人认为学习FPGA和学习单片机有相同的道理: 反复动手联系,有项目的跟着项目走,没有项目的买快开发板折腾! 下面是其它人写的关于如何学习FPGA的建议: 1.首先要理解 CPLD\FPGA器件的含义,主要是关于并行处理的理解. 2.编程语言,目前主要有2种,VHDL. Verilog.其中用 Verilog的比较多,评价也很好. 3.最好…
1.Abstract     在同一个模块被多次例化的时候,改变参数构建不同的硬件实体是一个很好的选择.特别是今天帮一个朋友调试一个比较复杂的逻辑,深有体会.这个也是一个小技巧,回来也查了许多资料,强化了一下这方面的知识.前几天也做了一个这样的例子,可以拿过来作为验证一下. 2.Content   2.1 语法说明     defparam 的语法说明如下:     defparam ParameterName = Constant Expression,     ParameterName =…
十六.IIC协议详解+Uart串口读写EEPROM 本文由杭电网友曾凯峰根据小梅哥FPGA IIC协议基本概念公开课内容整理并最终编写Verilog代码实现使用串口读写EEPROM的功能. 以下为原文内容: 在看完小梅哥讲解IIC总线基本概念后,就有种想跃跃欲试的想法,下面先复习下梅哥讲解的IIC总线若干基本概念.以下基本概念均为小梅哥总结,我就直接拿过来供大家参考学习. IIC基本特性 总线信号 SDA:串行数据线 SCL:串行数据时钟 总线空闲状态 SDA:高电平 SCL:高电平 IIC协议…
FPGA软件平台 系统 --> windows 7 xilinx --> vivado 2016.4 xilinx --> ISE 14.7 Altera --> quartus 13.0 仿真平台 --> Modelsim SE-64 10.4 这是我的软件操作平台,平时使用的话大概就是这些了,仿真软件并没有使用quartus和vivado自带的仿真软件,有时会有错误,莫名其妙的错误 其次TCL就是vivdao自带的版本,使用方法可以从DocNav中查询文档编号为 UG83…
下面这段源码是因为习惯不好,出现不正确波形的例子. module pwm_division(reset,clkin,clkout); input reset,clkin; output clkout; reg clkout; :] count; always @(posedge clkin) begin if(!reset) begin clkout<=; count<='d0; end else begin count<=count+'d1; $display("count1…
1.Abstract     前几天做了一个呼吸灯,觉得确实挺有意思的:可惜的是只有一个灯管亮,板子上有四个灯,要是能让这些灯有序地亮起来,那应该更有趣味了!跟传统的一样,逻辑上做成一个流水灯的样式,这种带有PWM调光的吸引样式,真可谓是超级流水灯了.     做这个是在已做好的呼吸灯的基础上进行添加功能的,整理好了也在随笔里边,这里就直接引用出来.     基于Verilog的PWM呼吸灯:http://www.cnblogs.com/hechengfei/p/4106538.html 2.C…
1.每个always只有一个@(event-expression). 2.always块可以表示时序逻辑和组合逻辑. 3.带有posedge和negedge关键字的是表示沿触发的时序逻辑,没有的表示组合逻辑或者电平敏感的锁存器.或者两者都表示. 4.每个在always快中赋值的信号必须定义成reg型或者整形(integer[<msb> :<lsb> ] identifier).整形变量默认是32位. 5.always块中应该避免组合反馈回路,always块中的赋值必须是明确的.否则…
http://www.cnblogs.com/loves6036/p/5779691.html 数字芯片和FPGA的验证.主要是其中的功能仿真和时序仿真. 验证中通常要搭建一个完整的测试平台和写所需要测试用例.而verilog这种硬件描述语言是出于可综合成电路的目的设计出来的,所以它在书写测试平台和测试用例是不够方便的(测试平台和用例不需要综合成电路).而SV正是由于它不需要满足可综合性,所以它变得非常灵活,它引入了面向对象语言的概念.在验证方面,如果说verilog是C语言的话,那SV就是C+…
此文是写给0基础学习者,也是对自己知识点总结水平的考验. 对于有C基础的人来说,学习verilog应该是轻而易举 —— 类比法学习. 第一步:格式. 对于C来说我们前面会写  ‘include“stdio.h” int main {.....}: 直接转化到verilog中是 module   module_name (....); ........ endmodule 对于C 的意思就是告诉编辑器,我要在有这个库的前提下,建立这么一个函数,它实现的功能是.......而对于Verilog来说就…
采用Top-Down设计方法,深入理解CPU的运作原理,本文参照夏宇闻老师的<Verilog 数字系统设计教程>,并做了相应的修改.仿真工具采用Mentor公司的ModelSim. 1.CPU概述 CPU(Central Processing Unit),即中央处理单元.它必须能够与读取外部的指令和数据,并且能够分析指令进而做出执行. (1)程序和数据输入到计算机的存储器中. (2)对指令做出处理. a.读取指令 b.分析指令 c.执行指令 RISC(Reduced Instructions…
[转载]https://blog.csdn.net/lijiuyangzilsc/article/details/50879545     数字芯片和FPGA的验证.主要是其中的功能仿真和时序仿真. 验证中通常要搭建一个完整的测试平台和写所需要测试用例.而verilog这种硬件描述语言是出于可综合成电路的目的设计出来的,所以它在书写测试平台和测试用例是不够方便的(测试平台和用例不需要综合成电路).而SV正是由于它不需要满足可综合性,所以它变得非常灵活,它引入了面向对象语言的概念.在验证方面,如果…
组合逻辑与时序逻辑 组合逻辑电路:任意时刻电路输出的逻辑状态仅仅取决于当时输入的逻辑状态,而与电路过去的工作状态无关. 时序逻辑电路:任意时刻电路输出的逻辑状态不仅取决于当时输入的逻辑状态,而与电路过去的工作状态有关. 在电路的结构上,时序逻辑电路肯定包含有存储电路,而且输出一定与存储电路的状态有关. COMS与TTL电平 常用逻辑电平:12V,5V,3.3V:TTL和CMOS不可以直接互连,由于TTL是在0.3-3.6V之间,而CMOS则是有在12V的有在5V的.CMOS输出接到TTL是可以直…
点击标题即可进入相关随笔. DE-SOC开发板VrilogHDL开发相关部分: (本过程需要Verilog HDL 的基本语言基础) 1.FPGA的发展史及FPGA 的基础架构 2.首先看一下友晶DE-SOC开发板的user manual 3.用VerilogHDL设计一个与门逻辑,并进行前仿和后仿 4.点亮一个LED灯 5.3-8 译码器的设计 6.计数器设计与应用 7.利用IP核设计高性能的计数器 8.设计一个BCD码计数器. 9.用一个例子来学习阻塞赋值和非阻塞赋值 10.状态机的设计实例…
IC设计推荐书籍 听语音 | 浏览:779 | 更新:2014-07-19 10:52 1 2 3 4 5 6 7 分步阅读 接触IC设计这一行已经有7年的时间了,前面4年是大学本科,用来学习知识,现在发现那时的课程种类太多了,包括:通信,电子,控制等等:后三年是研究生生涯,大部分的时间是在实习,给人打工,多少也学习到了一些东西,但是成长很慢,很不满意.这七年唯一的好处就是积累了许多的资料,学习到怎么去学习,在没有人的帮助下如何自己还能进步,如何去解决问题.本节介绍一些好的书籍或者手册供大家参考…
背景: 在最近实战开发中发现:对外部芯片进行初始化时,往往需要定义大量参数. 若直接在module中通过localparam或者parameter进行参数定义的话,会带来两个问题: 1.代码长度增加,不够美观: 2.不利于参数和代码修改: 为了解决这两个问题,我想到了在之前在<verilog数字系统设计教程>(夏闻宇)看到过的`define宏定义+`inlude "file.v"文件包含来实现参数模块化设计的方式. 实战: 1.新建参数模块文件(我命名为para.v): 2…
最近研究FIFO的时候,在开源工程中看到这样一段代码 ; always @(posedge rd_clk) {'b0}}; else {'b0}}; else if(re) rp_bin <= rp_bin_next; 以前没看到 {AW+1{1'b0}} 这样用位拼接符的,不清楚运算符 + 和 {} 的优先级哪个高. 虽然分析代码可以看出来“+”的优先级比“{}”高,但是在<Verilog数字系统设计教程>的4.7节 优先级别表中并没有位拼接运算符. 查了下 IEEE Verilog…
作者:桂. 时间:2017-06-24  11:07:40 链接:http://www.cnblogs.com/xingshansi/p/7039237.html 前言 Verilog是硬件描述语言,不算FPGA的核心部分,以前没有接触过,找了本书翻看一下(<Verilog数字系统设计教程第三版>),顺便记录一些基础知识,从第三章开始. 第三章:模块结构.基本数据类型.基本运算符 A-模块的结构 0.模块基本定义 一个基本的模块就是: module name(in1,in2,...out1,o…
1.Abstract     观察到一个有趣的现象,每当把Apple笔记本合上的时候,那个白色的呼吸灯就会反复地由暗渐明,然后又由明渐暗,乍一看就像Apple笔记本在打盹休息一样,十分可爱!于是突发奇想,要不用Verilog也写一个吧,资源也不需要太多,一个LED灯就可以了.为了使用方便,可以把它做成参数化的,可以根据时常进行参数调节:深睡.浅睡跟清醒的时候呼吸频率似乎是不一样的-     下面就来分析和实践一下. 2.Content   2.1 理论分析     根据上述描述的现象,仔细分析一…
如何在niosII中添加i2c外设_winday_新浪博客 如何在niosII中添加i2c外设 winday 摘要:本文说明了如何在niosII添加第三方i2c外设,以供参考. 由于本人使用的Altera SOPC Builder没有i2c外设,因此必须使用第三方i2c外设.如何把第三方i2c外设添加到niosII中,并加以应用呢?本人使用的开发环境:Altera SOPC Builder.Quartus II 8.0.Nios II  8.0 IDE.开发工具安装目录:D:\. 第一步,下载i…
1. Abstract function和task语句的功能有很多的相似之处,在需要有多个相同的电路生成时,可以考虑使用它们来实现.因为个人使用它们比较少,所以对它们没有进行更深的了解,现在时间比较充裕,我想通过写几个简单的电路将它们二者的功能进行验证一下,看看究竟是怎么生成电路的. 2. Contents     主要为测试function和task各自生成的电路,所以电路设计功能比较简单——4位BCD码转换成4位余3码. 文件开头的注释说明. /* ---------------------…
从刚接触System Verilog以及后来的VMM,OVM,UVM已经有很多年了,随着电子工业的逐步发展,国内对验证人才的需求也会急剧增加,这从各大招聘网站贴出的职位上也可以看出来,不少朋友可能想尽快掌握这些知识,自学是一个好办法,我结合自己的亲身经历和大家谈谈初学者如何能尽快入门,继而成为一名合格的IC验证师. 1.首先来谈谈仿真工具,无非就是Synopsys, Cacence Mentor三大公司的vcs, incisive, modelsim,其实还有些稍小一些公司象aldec公司的Ri…
序列检测器是时序数字电路设计中经典的教学范例,夏宇闻的<verilog数字系统设计教程>一书中有这个例子,用verilog设计一个“10010”序列的检测器.看完后我觉得F和G两个状态多余了,并且刚学了三段式状态机的写法,所以改写了这个程序,代码如下: 1 module seqdet(nrst,clk,x,z); 2 input nrst,clk; 3 input x; 4 output z; 5 reg z; 6 7 reg [4:0]CS,NS; 8 parameter [4:0] 9 I…
FPGA作为一种高新的技术.已经逐渐普及到了各行各业.不管是消费类.通信类.电子行业都无处不在它的身影,从1985年第一颗FPGA诞生至 今,FPGA已经历了将近20多个年头,从当初的几百个门电路到如今的几百万门.几千万门--.从原来的上千元的天价到如今几元的超低价,可谓是出现了翻 天覆地的变化. 所以当前正是学习FPGA的最好时机.不管是社会的需求也好,还是技术的成熟度也好.已经达到了前所未有的高度,我们能够花更少的成本,并 以最快的速度掌握一种新的前沿技术,对我们的未来发展将会是很大的帮助.…