当前位置:首页 » 存储配置 » 存储器用于FPGA的配置PROM

存储器用于FPGA的配置PROM

发布时间: 2022-12-24 04:32:19

① FPGA为什么要配置prom

通过JTAG口可以像PROM和FPGA下载程序,PROM的TDO接到FPGA的TDI作用在此,D0接到FPGA的DIN口是把下载到PROM里面的程序传到FPGA里面的,一般上电之后是自动把PROM里面的程序传到FPGA里面的,

② 怎么读取PROM

首先需要地址输入A2、A1和A0是器件地址输入引脚,然后24C02/32/64使用A2、A1和A0输入引脚作为硬件地址,总线上可同时级联8个24C02/32/64器件详见器件寻址,然后进行认证匹配,之后加载运行后就可以成功的读取prom。这时需要init输出在内部配置存储器清零期间保持低电平,一旦init管脚变高,就表明设备已准备接受配置,这样就可以成功地读取PROM。

③ 如何将用户数据写入fpga的配置flash/prom

如果不是实时写的话,可以工程中加入ROM的Megacore,同时指定ROM的init文件,这样本质上这些数据就是存储在fpga的flash/prom中,fpga加载的时候会加载到片内的ROM内。

④ 关于FPGA的有关介绍

FPGA 是英文Field Programmable Gate Array 的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC) 领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写。在修改和升级时,不需额外地改变PCB 电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本,因此获得了广大硬件工程师的青睐。
1984 年,在硅谷工作的Bernie Vonderschmitt、Ross Freeman 和 Jim Barnett 共同构建了一个设想,他们梦想创立一家不同于一般的公司。他们希望创建一家在整个新领域内开发和推出先进技术的公司。并且,他们还希望以这种方式领导它:在这里工作的人们热爱他们的工作、享受工作的乐趣,并对他们所从事的工作着迷。
创造性地推出了“无晶圆半导体”公司的概念。2009 年2 月18 日,Ross Freeman 因他的这项发明——现场可编程门阵列 (FPGA) 而荣登2009 美国发明家名人堂。Freeman 先生的发明是一块全部由“开放式门”组成的计算机芯片,其专利号为 4,870,302。采用这种芯片,工程师可以根据需要进行编程,添加新的功能,满足不断发展的标准或规范要求,并可在设计的最后阶段进行修改。
对PROM、EPROM、E2PROM 熟悉的人都知道这些可编程器件的可编程原理是通过加高压或紫外线导致三极管或MOS 管内部的载流子密度发生变化,实现所谓的可编程,但是这些器件或只能实现单次可编程或编程状态难以稳定。FPGA 则不同,它采用了逻辑单元阵列LCA(Logic Cell Array) 这样一个新概念,内部包括可
配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block) 和内部连线(Interconnect)三个部分。
FPGA 的可编程实际上是改变了CLB 和IOB 的触发器状态,这样,可以实现多次重复的编程由于FPGA 需要被反复烧写,它实现组合逻辑的基本结构不可能像ASIC 那样通过固定的与非门来完成,而只能采用一种易于反复配置的结构。查找表可以很好地满足这一要求,目前主流FPGA 都采用了基于SRAM 工艺的查找表结构,也有一些军品和宇航级FPGA 采用Flash 或者熔丝与反熔丝工艺的查找表结构。通过烧写文件改变查找表内容的方法来实现对FPGA 的重复配置。
根据数字电路的基本知识可以知道,对于一个n 输入的逻辑运算,不管是与或非运算还是异或运算等等,最多只可能存在2n 种结果。所以如果事先将相应的结果存放于一个存贮单元,就相当于实现了与非门电路的功能。FPGA 的原理也是如此,它通过烧写文件去配置查找表的内容,从而在相同的电路情况下实现了不同的逻辑功能。
查找表(Look-Up-Table) 简称为LUT,LUT 本质上就是一个RAM。目前FPGA 中多使用4 输入的LUT,所以每一个LUT 可以看成一个有4 位地址线的 的RAM。 当用户通过原理图或HDL 语言描述了一个逻辑电路以后,PLD/FPGA 开发软件会自动计算逻辑电路的所有可能结果,并把真值表( 即结果) 事先写入RAM,这样,
每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。
从表中可以看到,LUT 具有和逻辑电路相同的功能。实际上,LUT 具有更快的执行速度和更大的规模。由于基于LUT 的FPGA 具有很高的集成度,其器件密度从数万门到数千万门不等,可以完成极其复杂的时序与逻辑组合逻辑电路功能,所以适用于高速、高密度的高端数字逻辑电路设计领域。其组成部分主要有可编
程输入/ 输出单元、基本可编程逻辑单元、内嵌SRAM、丰富的布线资源、底层嵌入功能单元、内嵌专用单元等,主要设计和生产厂家有赛灵思、Altera、Lattice、Actel、Atmel 和QuickLogic 等公司,其中最大的是美国赛灵
思公司,占有可编程市场50% 以上的市场份额,比其他所有竞争对手市场份额的总和还多。
FPGA 是由存放在片内RAM 中的程序来设置其工作状态的,因此,工作时需要对片内的RAM 进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA 芯片将EPROM 中数据读入片内编程RAM 中,配置完成后,FPGA 进入工作状态。掉电后,FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA 能够反复使用。FPGA 的编程无须专用的FPGA 编程器,只须用通用的EPROM、PROM 编程器即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。
因此,FPGA 的使用非常灵活。如前所述,FPGA 是由存放在片内的RAM 来设置其工作状态的,因此工作时需要对片内RAM 进行编程。用户可根据不同的配置模式,采用不同的编程方式。Xilinx FPGA 的常用配置模式有5 类:主串模式、从串模式、elect MAP 模式、Desktop 配置和直接SPI 配置。
目前,FPGA 市场占有率最高的两大公司赛灵思公司和Altera 生产的FPGA 都是基于SRAM 工艺的,需要在使用时外接一个片外存储器以保存程序。上电时,FPGA 将外部存储器中的数据读入片内RAM,完成配置后,进入工作状态;掉电后FPGA 恢复为白片,内部逻辑消失。这样FPGA 不仅能反复使用,还无需专门的FPGA编程器,只需通用的EPROM、PROM 编程器即可。Actel、QuickLogic 等公司还提供反熔丝技术的FPGA,具有抗辐射、耐高低温、低功耗和速度快等优点,在军品和航空航天领域中应用较多,但这种FPGA 不能重复擦写,开发初期比较麻烦,费用也比较昂贵。Lattice 是ISP 技术的发明者,在小规模PLD 应用上有一定的特色。早期的赛灵思公司产品一般不涉及军品和宇航级市场,但目前已经有多款产品进入该类领域。
FPGA 芯片结构目前主流的FPGA 仍是基于查找表技术的,已经远远超出了先前版本的基本性能,并且整合了常用功能( 如RAM、时钟管理和DSP) 的硬核(ASIC 型) 模块。实际上每一个系列的FPGA 都有其相应的内部结构),FPGA 芯片主要由6 部分完成,分别为:可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块。

⑤ FPGA用到的各个存储器问题

首先flash和EPCS其实有一个就可以了,memory—on chip ,ROM在FPGA内部,FLASH,SRAM,SDRAM,EPCS则是外扩的存储器。对于一般的系统,会把程序(包括逻辑块和NIOS的C代码)通过工具(内嵌在nios IDE中)烧写到flash或EPCS中(当然你的数据文件也是可以存在这里面的,地址要在程序空间之后),上电后,FPGA从内部的一个ROM中引导程序(这个ROM是不需要用户操作的),然后将flash或EPCS中的程序加载到on_chip_ram或外部SRM,SDRAM什么的,这取决于你SOPC定制的时候,在CPU的异常复位地址指向on_chip_ram还是SRM,SDRAM等。
所以对于一个简单的系统应该是这样的启动流程:
SOPC定制(程序烧写到什么地方,复位地址在哪)-->编写逻辑模块和nios程序-->调试,烧写程序-->启动系统-->boot_loader从ROM启动将程序搬入on_chip_ram或外部SRM,SDRAM-->程序跳转到on_chip_ram或外部SRM,SDRAM的0地址开始执行用户的程序。
over
希望你懂了~~
还不清楚可以参考一些书籍、论坛什么的,现在的FPGA技术已经很成熟了,书籍蛮多~~

⑥ FPGA配置芯片

没配置芯片怎么下载程序呀,如果是做测试程序用可以使用JTAG,如果要保存程序,下次能继续工作,最好使用EPCS芯片吧,我常用的是EPCS4,(Atera FPGA)

⑦ 两个芯片如何区分fpga和prom

区别是要辨别他们,读出芯片上标称的型号即可,如果对器件熟悉的话,一看型号的前缀就能辨别 1)以Altera公司的片子为例: ALTERA公司的产品一般以EP开头,代表可重复编程。
①如果型号以EPM********开头,即MAX系列(其中MAX代表阵列矩阵),就是CPLD ②ALTERA公司的FPGA产品系列代码为EP或EPF,典型产品型号含义如下: EPF10K10:FLEX10K系列FPGA,典型逻辑规模是10K有效逻辑门。
EPF10K30E:FLEX10KE系列FPGA,逻辑规模是EPF10K10的3倍。
EPF20K200E:APEX20KE系列FPGA,逻辑规模是EPF10K10的20倍。
EP1K30:ACEX1K系列FPGA,逻辑规模是EPF10K10的3倍。
EP1S30:STRATIX系列FPGA,逻辑规模是EPF10K10的3倍。
如果以EP2C8*******开头,那它就是CycloneII系列FPGA芯片的一种,等等 ③ALTERA公司的FPGA配置器件系列代码为EPC,典型产品型号含义如下: EPC1:为1型FPGA配置器件。
(存放配置文件的存储器) 2)Xilinx公司的CPLD和FPGA器件系列 Xilinx公司的产品一般以XC开头,代表Xilinx公司的产品。
典型产品型号含义如下: ①xilinx的XC9500系列 —— cpld XC95108-7 PQ 160C:XC9500系列CPLD,逻辑宏单元数108,引脚间延时为7ns,采用PQFP封装,160个引脚,商用。
②xilinx的SPARTAN系列——fpga XC2064:XC2000系列FPGA,可配置逻辑块(configurable Logic Block,CLB)为64个(只此型号以CLB为特征)。
XC2022:XC2000系列FPGA,典型逻辑规模是有效门1800。
XC3020:XC2000系列FPGA,典型逻辑规模是有效门2000。
XC4002A:XC4000A系列FPGA,典型逻辑规模是2K有效门。
XCS10:Spartan系列FPGA,典型逻辑规模是10K。

⑧ prom作为fpga的配置芯片烧一次不就不能用了吗

PROM在FPGA上使用,意思是掉电不丢失,它是可以多次烧写的。

⑨ 如何查找fpga芯片对应的prom型号

使用的是SPARTAN-3E的开发板,在fpga配置文件时,.bit文件的下载时,程序可以在线正常运行。但使用.mcs文件配置时,ISE上显示program success,但板子上的FPGA并没有加载程序,断电重启了也没反应。板子模式选择是M.S,PROM芯片型号选择也确认过了。我的代码就是开关一输入,到led灯上控制暗灭。
entity t is
Port ( STDIN : in STD_LOGIC;

CINT0 : out STD_LOGIC;

CINT1 : out STD_LOGIC;

CINT2: out STD_LOGIC;
CINT3 : out STD_LOGIC);
end t;

architecture Behavioral of t is

begin
CINT0<=STDIN;
CINT1<=STDIN;
CINT2<=STDIN;
CINT3<=STDIN;
end Behavioral;

管脚约束如下

# PlanAhead Generated physical constraints

NET "CINT0" LOC = F9;
NET "CINT1" LOC = E9;
NET "CINT2" LOC = D11;
NET "CINT3" LOC = F11;
NET "STDIN" LOC = L13;

⑩ 如何给自己的FPGA代码加密,保障代码专利不会被窃,欢迎各位出出主意

在使用方案上增加限制 如增加认证功能等

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:600
制作脚本网站 发布:2025-10-20 08:17:34 浏览:892
python中的init方法 发布:2025-10-20 08:17:33 浏览:585
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:769
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:689
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1016
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:261
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:119
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:809
python股票数据获取 发布:2025-10-20 07:39:44 浏览:718