精华内容
下载资源
问答
  • FPGA入门教程.pdf

    2019-07-28 14:56:15
    1、数字电路设计入门 2、FPGA简介 3、FPGA开发流程 4、RTL设计 5、Quartus II 设计实例 6、ModelSim和Testbench
  • FPGA入门教程

    2018-12-18 13:54:25
    fpga开发教程,里面有不同的教程可以参考,适合入门学习
  • ALTERA芯片FPGA学习日记,把源码及仿真测试激励全部分享出来。每一节都对应有视频教程,讲解简单易懂,并且实用。博主会不定时更新博客
  • FPGA入门教程】(一)初识FPGA

    万次阅读 多人点赞 2018-05-24 18:43:00
    FPGA(Field-Programmable Gate Array,现场可编程门阵列),正如其名,FPGA内部有大量的可编程逻辑功能块,使用verilog HDL(硬件描述语言)实现设计。  玩过单片机的小伙伴刚接触FPGA可能会有点困惑,其实FPGA与...

      FPGA(Field-Programmable Gate Array,现场可编程门阵列),正如其名,FPGA内部有大量的可编程逻辑功能块,使用verilog HDL(硬件描述语言)实现设计。

      玩过单片机的小伙伴刚接触FPGA可能会有点困惑,其实FPGA与单片机最大的区别就在于:FPGA设计的是电路,单片机设计的是程序。单片机只有一个CPU在工作时钟的驱动下顺序的执行程序(取指、译码、执行),所以工作速度较慢,而FPGA设计出来的是整个电路逻辑系统,根本不需要单片机这么复杂,所以FPGA的工作速度自然很快,在两者各有各的优势下,单片机主要用于进行相关控制,FPGA多用于信号处理相关。

      典型的FPGA原理和结构如下图(注:以Cyclone IV E FPGA芯片为例),主要包括三类基本资源

              

    • 可编程逻辑功能块(Altera-LE(Logic Element) / Xlinx-Slice)

                    是实现用户功能的基本单元,多个逻辑功能块通常规则地排成一个阵列结构,分布于整个芯片;

    • 可编程内部互连资源

        包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或输入/输出块连接起来,构成特定功能的电路。用户可以通过编程决定每个单元的功能以及它们的互连关系,从而实现所需的逻辑功能。

    • 可编程输入/输出(I/O)块

         完成芯片内部逻辑与外部管脚之间的接口,围绕在逻辑单元阵列四周;

      

      FPGA从简单的逻辑粘合,发展到现在的可编程片上系统,FPGA厂家也在基本的FPGA架构上加入了一些扩展资源,比如时钟管理单元(PLL、DLL)、嵌入式存储器单元和硬件乘法器单元,DSP单元一些高端器件还加入了高速收发器、甚至嵌入式硬核处理器,让FPGA的应用领域更广阔,Cyclone IV E器件加入的扩展资源有:

    • PLL锁相环

        模拟电路,将输入的周期信号进行分频和倍频,或改变相位,输出一个或多个稳定的时钟信号;

    • M9K存储器

        嵌入式块RAM,容量大小9Kbit,这些存储器可以被配置成单端口、简单双端口、真双端口RAM、FIFO缓冲器、ROM

    • 18*18硬件乘法器

        快速进行运算

     

      FPGA中除了三类基本资源和一些扩展资源外,由图中可以看到,FPGA中资源分布也是很精致的:

        1、逻辑阵列和M9K存储器交替分布,这样做的优点是缩短数据的传输路径,以获得更优的时序性能;

        2、IOEs和PLL单元分布在器件的四周,数据流一般从左侧IO流入,经过处理、运算、存储,通过右侧IO流出,控制信号通过上下IO输入输出;有时候系统需要高质量时钟(比如软核所需工作时钟)通常由PLL单元产生,而这些分布在四周的PLL可以最短时钟源产生工作时钟,另外,PLL属于模拟电路,放在周围更利于生产;

      两种主流FPGA的资源情况如下:

      Altera Cyclone IV E系列FPGA常见硬件资源详情列表:

     

     

      Xilinx 7 系列FPGA 硬件资源详情:

      

       最后,放上两张开发板图片,一块是小梅哥基于Cyclone IV EP4CE10的AC620,一块是Digilent基于Xilinx Artix7的Basys3,两块都很精致有木有~

      

      

     

     

      

     

     

    展开全文
  • Xilinx FPGA系列入门教程,如何搭建Xilinx FPGA开发环境
  • FPGA基础教程

    2013-02-17 15:35:15
    学习fpga必备教程
  • FPGA入门教程3.pdf

    2021-10-30 10:40:58
    FPGA入门教程3.pdf
  • 基于XILINX 7系列FPGA基础入门
  • FPGA入门教程.

    2011-10-31 20:02:25
    初学者可以以此作为参考,是FPGA的经典入门教程.
  • FPGA,其实并不难——创龙FPGA视频教程 1-基础理论.rar FPGA,其实并不难——创龙FPGA视频教程 1-基础理论.rar FPGA,其实并不难——创龙FPGA视频教程 1-基础理论.rar
  • FPGA入门教程.do

    2012-10-07 16:08:29
    FPGA入门教程.henbucuo很不错哦,电子专业必备的
  •  “面积”是指一个设计所消耗FPGA的逻辑资源数量,“速度”指设计在芯片上稳定运行所能达到的最高频率。  优化RTL代码追求的最终目标是面积或速度,或者是两者的平衡。 6、Pipelining技术  即 流水线...
    1、使用verilog进行RTL设计一般可归纳为3种基本的描述方式:
         (1)数据流描述:采用assign连续赋值语句
         (2)行为描述:使用always语句或initial语句块的过程赋值语句
         (3)结构化描述:实例化已有的功能模块或原语,即平常所说的元件例化和IP core.
          过程赋值语句包括非阻塞过程赋值、阻塞过程赋值和 连续过程赋值
    2、RTL级设计时需注意的问题
         (1)凡是在always或initial语句中赋值的变量,一定是reg类型变量;凡是在assign语句中赋值的变量,一定是wire类型变量、
         (2)定义存储器:reg[3:0]      MEMAORY[0:7];地址为0~7,每个存储单元都是4bit;
         (3)由于硬件是并行工作的,在Verilog语言的module中,所有描述语句(包括连续辅助语句assign、行为语句块always和initial语句块以及模块实例化)都是并发执行的。
         (4)使用完备的if...else语句,使用个条件完备的case语句并设置default操作。以防止产生锁存器latch,因为锁存器对毛刺敏感
         (5) 严禁设计组合逻辑反馈环路,它最容易引起振荡、毛刺、时序违规等问题
         (6)不要在两个或两个以上的语句块(always或initial)中对同一个信号赋值
     3、阻塞赋值与非阻塞赋值
         (1)阻塞赋值的操作符号为“=”。它的含义是在计算等式右侧表达式值及完成其赋值时不 会被其他的 verilog 语句打断,就是说,在当前赋值没有完成之前,它阻塞了其他 verilog 语句的执行。
         (2) 非阻塞赋值的操作符为“<=”。它的含义是子啊赋值操作时刻开始计算等式右边,赋值操作时刻结束时更新等式左边。在这器件,可以执行其他Verilog语句,也不阻塞其他Verilog语句的执行。
         在实际使用中,应该遵循的原则是:
         (1)在时序逻辑中,使用非阻塞赋值
         (2)在组合逻辑中,使用阻塞赋值
         (3)在同一个always块中,不要混合使用阻塞赋值和非阻塞赋值
         (4)在同一个always块中,如果既有组合逻辑又有时序逻辑,使用非阻塞赋值
         (5) always模块的敏感表为电平敏感信号时,使用阻塞赋值
         (6) 不要使用#0时延进行赋值
         (7)不要在阻塞赋值中使用时延语句
         (8)在行为级描述中,如语句间是 顺序执行的关系,使用阻塞赋值
    4、哪些是不可综合的代码
         (1)对于一些抽象的行为描述代码是不可综合的。延迟语句(如: #delay)、初始化语句 initial以及等待语句 wait。
         (2)对于一些抽象的运算代码也是不可综合的。
         (3)对于不定次数的循环运算是不可综合的。
    5、面积和速度是FPGA设计的两个标准。
         “面积”是指一个设计所消耗FPGA的逻辑资源数量,“速度”指设计在芯片上稳定运行所能达到的最高频率。
         优化RTL代码追求的最终目标是面积或速度,或者是两者的平衡。
    6、Pipelining技术
         即 流水线时序优化方法,其本质是调整一个较大的组合逻辑路径中寄存器位置, 用寄存器合理分割改组合逻辑路径,从而降低路径Clock-To-Output 和Setup等时间参数的要求,达到提高设计频率的目的。
    7、模块复用与资源共享
         模块复用与资源共享的目的在于节约FPGA的逻辑资源,即节约面积。
    8、逻辑复制时一种通过增加面积而改善时序条件的优化手段。逻辑复制最常用的场合是调整信号的扇出。
    9、状态机的设计
         推荐采用两段写法(2个always模块)或三段写法(3个always模块)。

         两段写法的核心思想是,一个always模块采用同步时序描述状态转移;另一个always模块采用组合逻辑方式判断转台转移条件,描述状态转移规律。其结构如下:


    三段式写法的核心思想是,一个always模块采用同步时序的方式描述状态转移,一个采用组合逻辑的方式判断状态转移条件,描述状态转移规律,第三个always模块使用同步时序电路描述每个状态的输出


    状态机设计的其他技巧和准则:
         (1)状态机的编码最好使用one-hot(独热码)
         (2)一个玩呗的状态机应该具备初始化状态和默认状态
         (3)状态机的编码可以用parameter定义,不推荐使用define宏定义
         (4)时序逻辑always米快使用非阻塞赋值"<=",组合逻辑模块使用阻塞赋值“=”
         (5)使用玩呗的if...else语句和case 语句
         (6)case语句需具备full_case和parallel_case属性。full_case定义了所有可能的输入模式,parallel_case定义了case项是不重复的。
    10、分析状态机的工具:synplify pro。
    11、testbench包括两部分:一时激励,而是被验证设计的元件例化。


    展开全文
  • 经典FPGA入门教程

    2009-01-13 14:03:12
    很好的FPGA入门教程 第一章FPGACPLD概述.pdf 第2章 ALTERA可编程逻辑器件.pdf 第三章 HS102型FPGACPLD实验板.pdf 第四章 Max+plusII10.2的使用.pdf 第五章. Quartus4.2软件的使用.pdf 第六章 HS101型FPGACPLD实验板...
  • FPGA入门资料7本合集

    2019-02-20 15:31:25
    FPGA 入门资料 7本合集 1.深入浅出玩转FPGA_吴厚航 2.FPGA开发全攻略(上) 3.FPGA开发全攻略(下) 4.FPGA应用开发入门与...6.写给小白们的FPGA入门设计实验 7.FPGA数字信号处理设计教程-system generator入门与提高

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,857
精华内容 1,942
关键字:

fpga入门教程