如何兼顾学习ARM与FPGA

合集下载

fpga与arm之间的大量数据传输

fpga与arm之间的大量数据传输

fpga与arm之间的大量数据传输FPGA(Field Programmable Gate Array)和ARM(Advanced RISC Machine)是两种常用于嵌入式系统开发的技术。

FPGA是一种可编程逻辑芯片,可以按照用户的需求进行定制化的硬件实现,而ARM 则是一种基于RISC架构的微处理器核心,广泛应用于移动设备和嵌入式系统中。

在某些应用场景下,需要在FPGA和ARM之间进行大量数据传输,本文将探讨这种数据传输的相关问题。

我们需要了解FPGA和ARM之间的数据传输方式。

一种常见的方式是通过直接内存访问(DMA)来实现。

DMA是一种无需CPU干预的数据传输方式,通过配置DMA控制器,可以在FPGA和ARM之间建立一个高速数据传输通道。

ARM可以通过配置DMA控制器的寄存器来指定数据传输的起始地址、传输长度和传输方向等参数,然后由DMA控制器负责实际的数据传输操作。

这种方式能够大大提高数据传输的效率,减轻CPU的负担。

在进行FPGA和ARM之间的数据传输时,需要考虑一些重要的因素。

首先是数据传输的带宽。

带宽是指单位时间内可以传输的数据量,通常以比特率或字节率来衡量。

对于大量数据传输来说,高带宽是非常重要的,可以保证数据能够及时传输完成,提高系统的响应速度。

其次是数据传输的稳定性。

在高速数据传输过程中,由于电磁干扰、时钟偏差等原因,可能会导致数据传输的错误。

因此,需要采取一些措施来保证数据传输的稳定性,例如使用差错校验码、时钟同步等技术。

FPGA和ARM之间的数据传输还需要考虑数据的格式和协议。

数据格式是指数据在传输过程中的组织方式,例如二进制、十六进制、ASCII码等。

不同的应用场景可能需要采用不同的数据格式。

协议是指数据传输过程中的规则和约定,例如数据的起始标志、传输顺序、错误处理等。

常用的数据传输协议有UART、SPI、I2C、Ethernet等。

选择合适的数据格式和协议可以提高数据传输的效率和可靠性。

zynq的arm核与fpga的分工

zynq的arm核与fpga的分工

Zynq系列的芯片是一种将ARM核和FPGA集成在同一个芯片中的设计。

这种设计使得该芯片具有强大的处理能力和可编程性,广泛应用于各种嵌入式系统和物联网应用中。

在Zynq芯片中,ARM核主要负责系统主控和数据处理任务,而FPGA则负责实现高速、复杂的逻辑和电路设计。

这种分工主要是基于它们在性能、功耗和成本等方面的不同特点。

ARM核的优势在于其高性能、低功耗和易于集成的特点。

它采用精简的指令集架构,具有高效的处理能力,适用于需要大量计算和数据处理的应用场景。

此外,ARM核还提供了丰富的外设接口和软件开发工具,方便开发者进行系统集成和软件开发。

FPGA则具有高度的可编程性和灵活性,可以快速实现复杂的逻辑和电路设计,适用于需要高速、高吞吐量的应用场景。

FPGA还具有低功耗和低成本的特点,使得它在许多嵌入式系统和物联网应用中具有广泛的应用前景。

在Zynq芯片中,ARM核和FPGA的分工主要体现在以下几个方面:1. 控制和数据处理:ARM核负责控制系统的运行和数据处理任务,如任务调度、接口控制和数据传输等。

它可以通过外设接口与外部设备进行通信,并利用其高效的计算能力进行处理和分析。

2. 高速接口:FPGA可以实现高速接口,用于连接外部设备和传输高速数据。

在Zynq芯片中,FPGA可以用于实现各种高速接口,如PCIe、以太网和USB等,以满足不同应用的需求。

3. 硬件加速:FPGA可以通过配置实现硬件加速,加速某些特定的计算任务。

在Zynq芯片中,FPGA可以用于实现各种硬件加速模块,如数字信号处理器(DSP)模块、加密解密模块等,以提高系统的处理能力和性能。

4. 可编程逻辑:FPGA还可以实现各种可编程逻辑电路,如计数器、寄存器、存储器等。

这些逻辑电路可以根据需要进行配置和编程,以满足不同应用的需求。

总之,在Zynq芯片中,ARM核和FPGA的分工主要是基于它们的特点和性能优势。

ARM核负责控制和数据处理任务,提供高效的处理能力和外设接口;而FPGA则实现高速、复杂的逻辑和电路设计,提供高度的可编程性和灵活性。

整合ARM、FPGA与可编程模拟电路的单芯片方案

整合ARM、FPGA与可编程模拟电路的单芯片方案

整合ARM、FPGA与可编程模拟电路的单芯片方案[导读]现在设计人员不仅要从多种处理器架构中进行选择(大多数嵌入式系统设计都以处理器内核为中心),而且外设、通信端口和模拟功能组合的选择几乎无限。

而这正好指出了嵌入式应用的多样性所带来的问题:尽管有如此多的标准端口可供选择,却很少有设计人员能够最终实现单芯片解决方案。

如果世上真的有典型或者通用的嵌入式系统应用,主流半导体公司的产品目录一定会薄很多。

现在设计人员不仅要从多种处理器架构中进行选择(大多数嵌入式系统设计都以处理器内核为中心),而且外设、通信端口和模拟功能组合的选择几乎无限。

而这正好指出了嵌入式应用的多样性所带来的问题:尽管有如此多的标准端口可供选择,却很少有设计人员能够最终实现单芯片解决方案。

他们的选择往往都是微控制器加大量辅助芯片,其中常常包括一些用以提供微控制器所缺乏的特定逻辑功能的可编程逻辑,和作为实际信号接口的模拟IC。

设计人员极少实现单芯片解决方案,原因之一在于他们只能在有限的预定义功能组合中作出选择。

其它原因还包括应对设计变化的灵活性:功能与初始规格的匹配越精确,往后在项目进展过程中能够适应不断变化的要求的空间就越小。

然而,一旦解决方案要采用多芯片来实现,设计安全性的问题就凸显出来了。

由于芯片间布线板级暴露,而且MCU代码和/或FPGA配置数据没有加密,整个设计便很容易被盗版。

而随着Actel SmartFusion器件的推出,设计人员现在可以使用单芯片解决方案来提供期盼已久的可编程逻辑、可编程模拟电路与一个功能强大的业界领先32位架构微控制器内核的结合。

最重要的是,有一个同样全面的工具链支持该器件的广泛灵活性(模拟和数字功能均可定制)与ARM Cortex-M3处理器的软件可编程性相结合。

F2: SmartFusion中的可编程模拟模块(包括:精度为1%的ADC和DAC、多达3个采样频率为600 Ksps的12位ADC、最多三个12位第一阶sigma delta DAC、最多10个50 ns高速比较器以及集成多种温度、电压和电流监控功能。

三分钟了解 ARM、DSP及FPGA的区别

三分钟了解 ARM、DSP及FPGA的区别

三分钟了解ARM、DSP及FPGA的区别ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。

ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,四个功能模块可供生产厂商根据不同用户的要求来配置生产。

由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行。

目前ARM在手持设备市场占有90以上的份额,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。

DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。

一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。

DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。

也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。

另外还允许在程序空间和数据空间之间进行传输,因为增加了器件的灵活性。

其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。

它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。

它的强大数据处理能力和高运行速度,是最值得称道的两大特色。

由于它运算能力很强,速度很快,体积很小,而且采用软件编程具有高度的灵活性,因此为从事各种复杂的应用提供了一条有效途径。

ARM与FPGA通用GPMC总线接口设计实现

ARM与FPGA通用GPMC总线接口设计实现

ARM与FPGA通用GPMC总线接口设计实现引言:随着计算机科学的不断发展,特别是嵌入式系统的迅速发展,ARM和FPGA的结合越来越受到关注。

ARM作为一种高性能、低功耗的处理器,广泛应用于移动设备、智能家居和工业自动化等领域。

而FPGA则具有灵活可重构的特点,可以实现各种不同的数字电路和逻辑功能。

为了实现ARM与FPGA之间的通信,我们可以采用GPMC(General-Purpose Memory Controller)总线接口。

GPMC是一种高性能、灵活的AMBA(ARM Advanced Microcontroller Bus Architecture)总线接口,主要用于处理大容量主存储器和外部设备的访问。

设计思路:1.通过FPGA实现GPMC总线控制器,与ARM处理器相连。

2.根据GPMC总线协议规范,实现数据、地址、控制和时钟信号的交互。

3.通过GPMC总线控制器,实现ARM与FPGA之间的数据传输和通信。

设计细节:1.GPMC总线控制器的设计:-实现GPMC总线接口的时序控制逻辑,包括数据传输的读写控制和时钟同步。

-实现对外设的地址和数据的读写控制。

-实现GPMC总线控制器与ARM处理器的接口逻辑。

2.GPMC总线接口的数据传输:-对于数据的读取,ARM发送读命令和地址给GPMC控制器,控制器从外设读取数据,并将数据发送给ARM。

-对于数据的写入,ARM发送写命令、地址和数据给GPMC控制器,控制器将数据写入外设。

3.GPMC总线接口的时钟同步:-ARM和FPGA可能有不同的时钟频率,需要实现时钟同步。

- 可以使用FPGA中的PLL(Phase-Locked Loop)模块,将ARM的时钟频率转换为与FPGA相同的频率。

4.GPMC总线接口的地址映射:-ARM和FPGA之间的地址映射需要一致,以确保ARM访问FPGA上的正确地址。

-可以通过使用地址转换模块来实现地址映射。

5.GPMC总线接口的信号标准:-GPMC总线接口的信号标准需要符合AMBA总线接口规范。

ARM7与FPGA相结合在工业控制和故障检测中的应用

ARM7与FPGA相结合在工业控制和故障检测中的应用

故 障通道 的状 态 。定时 中断程序 通过对 收发 ,所以利 用 ARM 的串 口实现与远 ARM 地址总线在 F GA中进行译码 而 程 P P C的通信 ,通信 标准选 为 RS 3 标 22
各部分功能简介
顺序锁 定被检测 通道 的电平 值 ,然后 再 准 。不过 ,在 ARM 芯片上 要先 将 TTL
设置非常普 遍 ) 独的 C U芯片 由于 F GA与 目标设备 通过命令控 制总线和 恢 复正常 时撤销故障信 号 ,故而形 成虚 ,单 P P 其外部控制接 口数量有限而难以直 接完 故障检测 总线相连 。 成 多路检控 任务 ,故利 用 ARM 芯片 与 1 故障检 测和命令控制 部分 假 报警 。 命令 控制 :ARM 芯片 先判断 主控
维普资讯
应用设制 R 7 P G 和故障检测中的应用
西安 电子 科技大 学电子工程 系 杨培营 刘书 明
工业控 制中往往需要完 成多通道故 通过 数据 总线 、地 址总线 及读写控制 线 扰而产生 电平随机 反转 ,造成 故障 中断 障检测 及多通道命令控 制 ( 这种 多任务 相连 ,而 与终端 PC则 通过 串 口通信 ; 触发 ,而 中断触发后 又无法在通 道 电平
E :外部总线 控制接 口, B 可寻 BI EI
图 2FG P A内部逻 辑结构
址 64M 的空 间 ,通过 8个 片选 线 B
展 为更多通道 ) 低4 , 路用 于命令发送通 芯片 的普通外设 来使用 的。而 ARM 芯 ( NCS ~NC 3 0 S 独立 )和 2 位 地址线访 4 道 ,高 4路用于故 障检 测通道 ,读 写使 片对外设访 问的速度要远低于 片内存储 问 外 设 ,地 址 线 高 4 位 与 片 选 线 能信号 控制数据总 线。 器 ,所以要 在 ARM 中设置访 问的正确 ( S ~7 复用 , NC 4 ) 数据总线 可配置成8 /

ARM与FPGAGPMC总线接口设计实现

ARM与FPGAGPMC总线接口设计实现ARM(Advanced RISC Machine)与FPGA(Field Programmable Gate Array)GPMC(General-Purpose Memory Controller)总线接口设计实现是一种常见的系统级组件互连方式。

在许多嵌入式系统中,ARM处理器与FPGA协同工作以提供更高性能和更多功能。

通过设计和实现一个高效的总线接口,ARM处理器和FPGA可以有效地通信,实现数据传输和协作计算。

在设计ARM与FPGAGPMC总线接口时,需要考虑以下几个方面:1.电气特性:ARM和FPGA之间的总线接口需要考虑电平匹配、时序一致性等电气特性。

通常采用LVCMOS电平进行通信,同时需要保证时钟信号和数据信号的稳定性和可靠性。

2.信号传输:ARM处理器和FPGA之间的通信通路可以通过多种方式,如并行总线、串行总线、DMA等。

在设计总线接口时,需要选择合适的信号传输方式,并进行信号映射和协议转换。

3.性能优化:通过合理设计总线接口,可以优化数据传输性能,提高系统的吞吐量和响应速度。

可以采用FIFO缓冲、流水线设计等技术来提高数据传输效率。

4.数据传输协议:ARM和FPGA之间的通信需要定义数据传输协议,包括数据帧结构、数据标识符、校验和错误处理等。

通常采用标准协议如AHB、AXI等,也可以根据具体需求设计自定义协议。

基于以上考虑,下面介绍一种ARM与FPGAGPMC总线接口的设计实现方案:1.电气特性:采用LVCMOS电平进行信号传输,确保电平匹配和时序一致性。

使用适当的阻抗匹配和信号波形调整电路来提高信号质量。

2.信号传输:采用高速并行总线进行ARM和FPGA之间的数据传输。

通过并行总线数据线和控制线的映射,实现ARM处理器与FPGAGPMC之间的通信。

3.性能优化:设计FIFO缓冲器和数据流水线,提高数据传输效率。

在ARM处理器和FPGA之间增加数据缓冲和流水线处理,减少传输延迟和提高系统响应速度。

ARM与FPGA的接口实现解析

ARM与FPGA的接口实现解析ARM与FPGA(Field-Programmable Gate Array)的接口实现是指通过特定的硬件和软件设计,将ARM处理器与FPGA芯片进行连接和通信的方式。

ARM处理器是一种常见的嵌入式处理器,而FPGA芯片则是一种可编程逻辑器件,可以根据需要进行逻辑电路的重构。

1. AXI接口:AXI(Advanced eXtensible Interface)是ARM公司提供的一种高性能、低功耗的接口标准。

通过使用AXI接口,可以实现ARM和FPGA之间的高速数据传输和控制信号传递。

AXI接口提供了多个通道,包括数据通道、地址通道和控制通道,可以实现高效的数据交换。

2. AHB接口:AHB(Advanced High-performance Bus)是ARM公司提供的另一种接口标准。

AHB接口在ARM处理器和FPGA之间提供了广泛的数据和控制信号传输功能。

AHB接口可以用于实现不同速度和带宽要求的系统,同时还支持多个主设备和从设备的连接。

3. GPIO接口:GPIO(General Purpose Input/Output)接口是一种通用的数字输入/输出接口。

通过使用GPIO接口,可以实现ARM和FPGA 之间的简单的数字信号传输,例如控制信号、状态信号等。

GPIO接口通常通过引脚来实现,可以通过软件编程来控制引脚的输入和输出。

4. DMA接口:DMA(Direct Memory Access)接口是一种用于高速数据传输的接口。

通过使用DMA接口,可以实现ARM和FPGA之间的数据直接传输,减少了处理器的负载和延迟。

DMA接口通常使用内存缓冲区来存储数据,可以通过软件编程来控制数据的传输和处理。

5. UART接口:UART(Universal AsynchronousReceiver/Transmitter)接口是一种常见的串行通信接口。

通过使用UART接口,可以实现ARM和FPGA之间的串行数据传输。

ARM,单片机,FPGA,嵌入式,DSP

简单的说,嵌入式是嵌入式系统的简称,所谓嵌入式系统是指嵌入到应用对象中的专用计算机系统。

这里的对象就是指产品,比如日常使用的冰箱、空调、洗衣机,或者手机、游戏机等。

这些产品中都有计算机系统,这类计算机系统就是嵌入式计算机系统。

至于单片机、ARM、FPGA、DSP等都是实现嵌入式系统的硬件平台。

根据对象体系的功能复杂性和计算处理复杂性,提供的不同选择。

对于简单的家电控制嵌入式系统,采用简单的8位单片机就足够了,价廉物美,对于手机和游戏机等,就必须采用32位的ARM和DSP等芯片了。

FPGA是一种更偏向硬件的实现方式。

所以要学习嵌入式,要从单片机开始,然后学习ARM和DSP之类我个人认为你说的刚好相反。

不是别的,FPGA就是自己构建硬件电路,而DSP有内嵌的硬件乘法模块。

单片机应该是偏软的,比如说吧, 现在基本上可以完全用高级语言(如C)来编写单片机程序,而DSP 确还是要用到汇编。

你要知道,汇编可以说就是硬件语言。

呵呵,希望对你有用————ARM、FPGA和DSP的特点和区别是什么?发布时间:2009-5-8 14:25 发布者:ARM 阅读次数:833 DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。

一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。

DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。

也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。

另外还允许在程序空间和数据空间之间进行传输,因为增加了器件的灵活性。

其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。

ARM与FPGA通信

在数据采集卡中ARM主要负责数据显示和数据分析,处理的速度处于MS 级;而FPGA在系统中处于数据的高速采集和高速处理,处理的速度是ns级。

两个处理器的之间的数据传输属于典型的异步数据通信,它们之间通信的速度之间决定了系统处理数据的效率。

FPGA与ARM之间属于大量数据交换,以异步并行读取的方式为例介绍ARM与FPGA的通信,实际设计中使用DMA方式来实现ARM 与FPGA之间的大数据量通信。

ARM存储系统分析S3C2410A存储控制器提供访问外部存储器所需要的存储器控制信号。

S3C2410A支持大、小端模式,将存储空间分为8个组(Bank),每组大小是128M,共计1GB,如图1所示。

所有存储器组都可用于ROMA或者SRAM,Bank6、Bank7还可以用于SDRAM。

所有内部块的访问周期都可编程。

总线访问周期可以通过插入外部等待来延长,支持SDRAM的自刷新和掉电模式。

Bank0~Bank6的开始地址是固定的,Bank7的开始地址是Bank6的结束地址,灵活可变,并且Bank7的大小与Bank6的大小必须相等。

除Bank0外,其余各存储器的总线宽度可编程设置为8位、16位或者32位,但是Bank0只支持16位或者32位。

Bank0作为引导ROM,地址映射到0x0000_0000。

OM[1:0]是系统的引导模式控制引脚,在复位时,系统将检测OM[1:0]上的逻辑电平,并根据这个电平来决定Bank0区存储器的总线宽度。

图1 ARM存储单元分配图在设计中ARM的bank0用于Nor Flash,bank6和bank7用于两块SDRAM,我们选择bank4作为FPGA内部RAM映射的空间。

Bank4在ARM的统一基地址为0x20000000,后面的采集的数据都是基于这个地址为首地址的。

EP3C25基于SRAM结构,器件内部自带RAM,容量最大达到594Kbit。

为了方便ARM与FPGA通信,在FPGA上建立一个8Kbit的RAM数据缓冲区,将AD采集的数据缓冲在这8Kbit的RAM中,将ARM的数据总线和地址总线与RAM 缓冲区构建的双口RAM的数据线、地址线直接相连,使用总线访问FPGA内部RAM 就可以达到高速数据读取的目的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

如何兼顾学习ARM与FPGA
大一学生先从C语言开始入门,在大一阶段由于对计算机还非常陌生,因此不可能写
出一个具有完整图形界面的软件,重点以“与硬件无关的计算方法、 数据结构”为基础学习
C语言,至少练习编写一万行C代码,否则不会找到编程的感觉,也体会不到编程乐趣,很
多人就是因为缺乏一定量的训练,所以对编程没有 兴趣,以至于未到毕业时就全部忘记了,
程序设计是一项实践性很强的实践活动,没有大量的实践作为基础是很难入门的,因此我认
为编写一万行代码是判定是否入 门的依据。请初学者记住:当你编写了一万行代码时,这
是你能够从事专业的开始,否则你不要期望在这个领域混下去。与此同时,C语言也是学习
和使用 Verilog的重要基础,所以千万不可小视C语言。更重要的是,如果你的C语言不好
的话,你将来就业选择的路子就会受到很大的限制,要么只能做硬件工程 师、销售工程师
或者转行,别无选择! 有了一万行编程的经验后,大二接着开始学习数字电路和模拟
电路了,这是你的机会!将来的开发工作有几种选择,但这两门都很重要,学好了你有可能 成
为顶尖的高手、专家和系统级水平的人才,即便学得不太好,你也有可能成为一个优秀的工
程师。如果你精通了C/C++,即便你的硬件水平 一般,你也可以成为一个优秀的开发工
程师,即由硬件工程师负责逻辑电路和模拟电路的设计,由你来编程——你可以编写基于
WinCE、Linux、 Vxworks或者 Windows等操作系统的程序。那么怎样才算基本上“精通”
呢?至少编写五万行代码,当你已经编写了10万行代码时,可以说你已经完全精通了,这
个时候 你如果有很大的造化的话,那完全取决于你当初学习的基础是否牢固了。所以我在
前面提到了,精通一门可以成为优秀的开发工程师,但绝对不可能成为系统级的开 发工程
师,因为你的知识结构不行。 最好在学习数字电路时购买一个99元的EasyFPGA030
开发学习板,这个板子是我们开发的,但这个价格是没有利润的,不要认为我是在做推 销,
我们推出这个产品完全是针对大二学生的,希望有更多的大二学生提早醒悟,能够在学习数
字电路时同步学习FPGA和Verilog,强化课程之间的关 联。笔者虽然是一个企业家,但
也有一份爱心和社会责任感,为社会做出自己的贡献同样也是企业家的“销售业绩”,我们为
这个开发板撰写了30万字的配套资料 和适合各种水平的范例,也投入了大量的精力录制
Verilog语言视频讲座,这些都是超值和免费的。与此同时从2009年开始着手针对大二和大
三学生举办 FPGA大赛,以提高在校大学生的兴趣,让那些觉悟者进一步提高自信心,找
到自己未来的坐标。学好数字电路和模拟电路以及FPGA应用技术,除了成为电子 产品开
发工程师之外(高附加值的嵌入式系统产品几乎离不开FPGA),还有一个就业方向就是号称
“金饭碗”的集成电路设计。 作为初学者,在学习《电子技术基础(数字部分)》时同
步学习FPGA与Verilog技术的重点是快速入门和打下一定的基础,根据配套的教材和 数字
电路教材的内容将基本的数字电路用FPGA实现即可,这是本阶段的学习目标,不要将学习
高深难度的应用技术作为重点。并利用课余和暑假期间的空余时 间,将一些图书上现成的
使用数字电路实现的例子用FPGA来完成设计即可,比方如何使用FPGA 实现一个计数器,
并动手做出来。到大三阶段在做出选择,到底是选择成为一个专业的FPGA应用设计工程
师、还是嵌入式系统与FPGA混合应用系统设计工程 师或集成电路开发工程师,以自己的
兴趣和志向为基础而定,所以在学习嵌入式系统技术的同时学习FPGA,两者之间并不矛盾。
最好在大一开始学习单片机,这就是笔者为何撰写《新编电类专业计算机基础》这本图书的
原因(详见破解电类专业“就业难、人才荒”的解决方案! (4))。因为大一不学习单片机,后面
的课程都没有办法学好。对于大一学习单片机,很多老师不去用心研究学习方法和教学规律,
反而搬出一大堆理由来“吓唬 ”人。笔者当年仅仅是一个技校生,在完全没有指导老师的情
况下,也找不到可以参考的技术资料,只是凭着偶尔看到一篇报道罗伯特设计的Altair 8800
计算机就做出了一台不需要工作软件的计算机(改进型的Altair-80C31电路详见《新编电类
专业计算机基础》教材)。要相信现在公开的信 息、资讯条件、人们的聪明智慧与教师的力
量,因此大学本科生在大一阶段学会单片机是非常容易的一件事情。 有了单片机基础
之后,在大二阶段学习数字电路与模拟电路的同时,结合单片机学习接口扩展技术与模拟前
向通道数据采集技术,并编写相应的程序实现 一个一个的小系统设计,大三时根本不再需
要学习所谓的接口技术与微机原理了。针对数字电路与模拟电路笔者准备写作一套小系统设
计与制作配套图书,将前后之 间的课程也同步和关联起来,期望进一步提高大学生的动手
能力。 有了大一、二阶段强化训练,后续的很多课程度可以理论与实践并重地学习,
比方目前大学开设的《自动控制理论》几乎都是空对空地教学与联系,如果 结合自动控制
理论的教学,让学生学习设计一个自动穿越迷宫的电脑鼠,并举办相应的大赛,则能够很好
地将嵌入式系统应用技术、数字电路与模拟电路、计算方法 与数据结构、机构设计......相
关课程有机地结合起来,学生的兴趣将大大地得到提高。 当学生有了学习的兴趣和动
力之后,教学势必由老师个人在课堂上演“独角戏”的场面转变为研讨会,学生也一定会竭尽
全力由被动学习向主动学习转 变,这就是教育要达到的目标,所以我们不能一味地指责学
生不好学。作为老师我们一定要思考和拿出行动,让学生喜欢并愿意向您学习。事实上学生
的未来完全取 决于老师的引导,现在教师队伍存在的很大毛病就是将责任推向扩招和学生
不好好学,扩招有没有问题?当然有,但作为教师我们做得怎么样呢?我们是否在教学上 做
出了巨大的努力,这需要我们扪心自问。 学生不好好学,这也是事实!但也是表象,
我们要思考他们为什么不好好学习?我们应该怎样才能让他们好好地学?作为老师,第一不能
给学生划定考试 范围,第二学生缺课要坚决扣分,如果做到这两点基本的要求,学生不好
好学就制度处理,我想效果会有很大的改变。当然就业难的责任也不能完全推给老师,但老
师们应该做到自己该做到的,因为家长都希望老师们对他们的子女严格要求,更迫切的需求
就是让他们的子女学到真本事,他们肯定支持教师的行动。 进入大三阶段则需要有选
择地重点学习嵌入式操作系统原理与编程、嵌入式系统与FPGA的混合系统设计或者全力
以赴钻研FPGA应用技术等技术方向,大四阶段就可以真刀真*地完成一个漂亮的毕业设计,
并能够写出一篇比硕士水平还要高的论文。

相关文档
最新文档