21 嵌入式控制技术研究室
FPGA/SOPC 开发快速教程1
前言
FPGA 在复杂逻辑电路以及数字信号处理领域中扮演者越来越重要的角色,SOC(片上
系统)以其低功耗,高性能,低成本,高可靠性等优点成为嵌入式系统的发展趋势。作为一
个简明的教程,主要宗旨是让初学者快速地了解 FPGA/SOPC(可编程片上系统)开发的流程。
目前 IT 技术的发展可以说是一日千里,以本人的观点来讲,如果希望在电子设计领域有所作
为,则必须具备快速掌握新技术的能力。电子设计最重要的是实践的积累,我们只要具备了
一定的基础,应当马上投入实践,否则很多概念都无法真正理解。有不少人包括我,当下决
心要成为一个合格的电子设计工程师的时候,总是想如果把有关电路方面的理论都掌握了才
能所向披靡,有底气参加实际项目设计。当然如果能做到“把有关理论都掌握了”这样的境
界,我想应该是很理想的,但经验发现这并不实际。据我所知,我所认识的不少电子设计牛
人,他们的理论知识可能都比不上我们的本科生,但很多不错的产品都是从他们的手中开发
出来的,有了实践的经验后,他们掌握新技术的速度相当惊人。有人跟我说:“新技术是拿来
用的,不是拿来学的。”他们认为掌握新的设计技术应当尽快掌握它的设计流程。因此,我参
考朋友给我的意见,写了这个简易的教程,以非常详细的实例来让初学者了解基于 QuartusII
和 NiosII IDE 的 FPGA/SOPC 开发的基本流程,目的是为了让初学者尽快上手 FPGA/SOPC 的
开发流程,尽快投入到实践中。为了易于说明问题,本教程中的一些概念并不是很严谨,如
果读者对某些提法有异议,请参考相关资料和教材,并以相关资料和教材为准。通过该简明
教程,初学者能快速了解 FPGA/SOPC 的基本开发流程,很多技巧和深入理解都靠长期的经
验积累,因此初学者应该在了解了基本流程以后,思维不能局限于此,应在实践中提高水平,
并参考更全面和权威的资料。
本教程配套 CT-SOPCx 系列 FPGA/SOPC 学习套件(对于该套件的相关内容请参考附录。)
以实践为基础,适合具备基本的数字电路设计基础的初学者。第一章是 CPLD/FPGA 的基本
知识,这部分内容摘自互联网()并稍加删改,对于 CPLD/FPGA 知识为零
的初学者应先了解这部分内容;对于已经有了一定基础的同学可以跳过这部分内容。第二章
以两个例子来让初学者了解 FPGA 的基本开发流程,并熟悉 QuartusII 软件的使用。第三章以
一个例子来让初学者了解基于 NiosII 软 CPU 核的 SOPC 设计流程,并熟识 SOPC Builder 和
NiosII IDE 的基本使用。附录是本文所涉及的例子的学有限,错漏和不严谨之处在所难免,欢迎大家批评指正。
冯寿廷
2005年9月25日,于华南理工大学
1 版权归,未经同意不得翻印、公开传播等。
21 嵌入式控制科技研究室
21 嵌入式控制技术研究室
第一章 CPLD/FPGA 的基本知识
(一)可编程逻辑器件的历史和概述
随着数字电路应用越来越广泛,传统通用的数字集成芯片已经难以满足系统
的功能要求,而且随着系统复杂程度的提高,所需通用集成电路的数量呈爆炸
性增值,使得电路的体积膨大,可靠性难以保证。此外,现代产品的生命周期
都很短,一个电路可能需要在很短的周期内作改动以满足新的功能需求,对于
采用通用的数字集成电路设计的电路系统来说即意味着重新设计和重新布线。
因此,系统设计师们希望自己设计专用集成电路(ASIC)芯片,而且希望 ASIC 的
设计周期尽可能短,最好是在实验室里就能设计出合适的 ASIC 芯片,并且立即
投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛
的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。
早期的可编程逻辑器件只有可编程只读存贮器(PROM)、紫外线可按除只读存
贮器(EPROM)和电可擦除只读存贮器(EEPROM)三种。由于结构的限制,它们只能
完成简单的数字逻辑功能。
其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(PLD),
它能够完成各种数字逻辑功能。典型的 PLD 由一个“与”门和一个“或”门阵
列组成,而任意一个组合逻辑都可以用“与一或”表达式来描述,所以, PLD
能以乘积和的形式完成大量的组合逻辑功能。
这一阶段的产品主要有 PAL(可编程阵列逻辑)和 GAL(通用阵列逻辑)。PAL
由一个可编程的
FPGA快速开发教程 来自淘豆网m.daumloan.com转载请标明出处.