cyclone fpga在as模式下,如果epcs里面有有多个文件,fpga如何选择加载读取哪

cyclone fpga在as模式下,如果epcs里面有有多个文件,fpga如何选择加载读取哪,第1张

FPGA程序固化(转) 主配置式(AS)配置式(PS)用(JTAG)配置式:

AS由FPGA器件引导配置 *** 作程控制着外部存储器初始化程EPCS系列.EPCS1,EPCS4配置器件专供AS模式目前支持 Cyclone系列使用Altera串行配置器件完Cyclone期间处于主位配置期间处于属位配置数据通DATA0引脚送入 FPGA配置数据同步DCLK输入1钟周期传送1位数据

PS则由外部计算机或控制器控制配置程通加强型配置器件(EPC16EPC8EPC4)等配置器件完PS配置期间配置数据外部储存部件通DATA0引脚送入FPGA配置数据DCLK升沿锁存1钟周期传送1位数据

JTAG接口业界标准,主要用于芯片测试等功能,使用并芹IEEE Std .1联合边界扫描接口引脚支持JAM STAPL标准使用Altera载电缆或主控器完

AS PS JTAG区别:

AS模式: 烧FPGA配置芯片保存FPGA器件每电作控制器配置器件EPCS主发读取数据EPCS数据读入FPGA实现FPGA编程

PS模式:EPCS作控制器件FPGA做存储器数据写FPGA实现FPGA编程该模式实现FPGA线编程

JTAG:直接烧FPGA面由于SRAM断电要重烧

.pof文件通AS式载(保证byteblasterII/u blaster连接确)

.sof文件或者转换.jic通JTAG式载

FPGA工作配置数据存储SRAM加电须重新载实验系统通用计算机或控制器进行调试使用PS实用系统数情况必须由FPGA主引导配置 *** 作程FPGA主专用存储芯片获配置数据芯片fpga配置信息用普通编程器设计所pof格式文件烧录进

专用配置器件:epc型存储器

用配置器件:epc2,epc1,epc4,epc8,epc(现象已经逐步淘汰)等

于cyclone cycloneII系列器件,ALTERA提供针AS式配置器件,EPCS系列.EPCS1,EPCS4配置器件串行配置.注意,适用于cyclone系列.

除ASPS等单BIT配置外现些器件已经支持PPSFPS等些并行配置式提升配置配置速度所外挂电路PS些区别处理器配置比JRUNNER 等等需要再baidu吧至少十种比Altera配置式主要Passive Serial(PS),Active Serial(AS),Fast Passive Parallel(FPP),Passive Parallel Synchronous(PPS),Passive Parallel Asynchronous(PPA),Passive Serial Asynchronous(PSA),JTAG等七种配置式其Cyclone支持配置式PSASJTAG三种.

般做FPGA实验板,(cyclone系列)候,用蠢岁AS+JTAG式,用JTAG式调试,程序已经调试误,再用 AS模式程序绝档毕烧配置芯片,

关于工程同缀名文件适用范围:

sof(SRAM Object File)直接用PS模式配置数据FPGA用,USB BLASTER,MASTERBLASER,BBII,BBM适用,uartusII自,所其配置文件都由sof.

pof(Programmer Object File)由uartusII自,BBII适用,AS模式配置数据配置芯片

rbf(Raw Binary File)用于微处理器二进制文件.PS,FPP,PPS,PPA配置用处

rpd(Raw Programing Data File)包含bitstream二进制文件,用AS模式配置,能由pof文件

hex(hexadecil file)说,单片机

ttf(Tabular Text File)适用于FPP,PPS,PPA,bit-wide PS配置式

f(Serial Bitstream File)用PS模式配置Flex 10kFlex

当车子仪表显示“EPC”是发动机动力控制管理系统出现故障。

EPC指示灯会有两种亮起状态,分别是通电自检亮起和其它情况下的亮起,通电自检是车辆在行驶前监测全车传感器状态的指示,一雹正链般通电后如果不启动,等待3秒左右会自行熄灭。

其他情况下EPC指示灯亮起以及清宴车辆启动后EPC指示灯长时间没有熄灭,那么造成EPC指示灯常亮的原因主要有发动机进气系统故障、节源孙气门故障、燃油系统故障、发动机故障、ECU控制单元故障、刹车灯故障等。

ReadData_G2 ():G2读取数据命令

功能描述:

这个命令读取标签的整个或部分保留区、EPC存储器、TID存储器或用户存储器中的数据。从指定的地址开始读,以字为单位。

应用:

long  WINAPI ReadData_G2 (unsigned char *ComAdr, unsigned char * EPC, unsigned charEnum,unsigned char Mem, unsigned char WordPtr, unsigned char Num,unsigned char* Password,unsigned char MaskMem,unsigned char *MaskAdr, unsigned char MaskLen,unsigned char*MaskData, unsigned char * Data ,unsigned char * errorcode,longFrmHandle)

参数:

ComAdr:输入变量,读写器地址。

EPC:指向输入数组变量(输入的是每字节都转化为字符的数据)。是电子标签的EPC号。

Enum:在(0x00~0x0F)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时不掩码。ENum为0xFF时掩码。如果为其它值将返回参数错误信息。

Mem:输入变量,一个字节。选择要读取的存储区。

0x00: 保留区;

0x01:EPC存储器;

0x02:TID存储器;

0x03:用户存储器。

其他值保留。若命令中出现了其它值,将返回参数出错的消息。

WordPtr:输入变量,一个字节。指定要读取的字起始地址。0x00 表示从第一个字(第一个16位存储体)开始读,0x01表示从第2个字开始读,依次类推。

Num:输入变量,一个字节。要读取的字的个数。不能设置为0x00,将返回参数错误信息。Num不能超过120,即最多读取120个字。若Num设置为0或者超过了120,将返回参数出错的消息。

Password:指向输入数组变量(输入的是每字节都转化为字符的数据),四个字节,这四个字节是访问密码。32位的访问密码的最高位在PassWord的第一字节(从左往右)的最高位,访问密码最低位在PassWord第四字节的最低位,PassWord的前两个字节放置访问密码的高字。

MaskMem:输入变量,一个字节,掩码区。0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。

MaskAdr:输入数组,2个字节,掩码的起始位地址(单位:Bits)。范围0~16383。

MaskLen:一个字节举巧,掩码的位长度(单位:Bits)。

MaskData:输入数组,掩码数据。MaskData数据字节长度是MaskLen/8。如果MaskLen不是8的整数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0

Data:指向输出数组变量(输出的是每字节都转化为字符的数据),是从标签中读取的数据。

Errorcode:输出变量,一个字节,读写器返回响应状态为0xFC时,返回错误代码。

FrmHandle:输入变量,返回与读写器连接端口对应的句柄,应用程序通过该句柄可以 *** 作连接在相应端口的读写器。如果打开不成功,返回的句柄值为-1。

返回:

如果该函数调雹知用成功,返回一个零值,读到的数据在Data中。

否则,返回非零正肆键值请查看其他返回值定义,返回的错误代码请查看错误代码定义。

3.2.3) WriteData_G2():G2写命令

功能描述:

这个命令可以一次性往保留内存、EPC存储器、TID存储器或用户存储器中写入若干个字。

应用:

long  WINAPI WriteData_G2(unsigned char *ComAdr, unsigned char * EPC, unsigned charWnum, unsigned char Enum,unsigned char Mem, unsigned char WordPtr,unsigned char*Writedata,unsigned char * Password, unsigned char MaskMem,unsignedchar*MaskAdr,unsigned char MaskLen,unsigned char * MaskData,unsigned char *errorcode,long FrmHandle)

参数:

ComAdr:输入变量,读写器地址。

EPC:指向输入数组变量(输入的是每字节都转化为字符的数据)。是电子标签的EPC号。

Wnum:输入变量,待写入的字个数,一个字为2个字节。这里字的个数必须和实际待写入的数据个数相等。

Enum:在(0x00~0x0F)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时不掩码。ENum为0xFF时掩码。如果为其它值将返回参数错误信息。

Mem:输入变量,一个字节。选择要读取的存储区。

0x00: 保留区;

0x01:EPC存储器;

0x02:TID存储器;

0x03:用户存储器。

其他值保留。若命令中出现了其它值,将返回参数出错的消息。

WordPtr:输入变量,一个字节。指定要写入的字起始地址。指定要写入数据的起始地址。如果写的是EPC区,则会忽略这个起始地址。EPC区总是规定从EPC区0x02地址(EPC号的第一个字节)开始写。

Writedata:指向输入数组变量(输入的是每字节都转化为字符的数据)。待写入的字。这是要写入到存储区的数据。比如,WordPtr等于0x02,则输出变量Data中第一个字(从左边起)写在Mem指定的存储区的地址0x02中,第二个字写在0x03中,依次类推。

Password:指向输入数组变量(输入的是每字节都转化为字符的数据),四个字节,这四个字节是访问密码。32位的访问密码的最高位在PassWord的第一字节(从左往右)的最高位,访问密码最低位在PassWord第四字节的最低位,PassWord的前两个字节放置访问密码的高字。

MaskMem:输入变量,一个字节,掩码区。0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。

MaskAdr:输入数组,2个字节,掩码的起始位地址(单位:Bits)。范围0~16383。

MaskLen:一个字节,掩码的位长度(单位:Bits)。

MaskData:输入数组,掩码数据。MaskData数据字节长度是MaskLen/8。如果MaskLen不是8的整数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0

Errorcode:输出变量,一个字节,读写器返回响应状态为0xFC时,返回错误代码。

FrmHandle:输入变量,返回与读写器连接端口对应的句柄,应用程序通过该句柄可以 *** 作连接在相应端口的读写器。如果打开不成功,返回的句柄值为-1。

返回:

如果该函数调用成功,返回一个零值,完全写入。

否则,返回非零值请查看其他返回值定义,返回的错误代码请查看错误代码定义。

以上是需要dll支持的

数据块写 *** 作

选择标签(图3-1中1),选择存储区(图3-1中2,只有EPC区和用户区可以写入数据),填写起始地址和读取长度(图3-1中3),注: 起始地址:0x00 表示从第一个字(相应存储区第一个16位)开始读,0x01表示从第2个字开始读,依次类推。读长度:要读取的字的个数。不能为0x00,不能超过120,即最多读取120个字。若设置为0或者超过了120,将返回参数出错的消息。访问密码:从左到右为从高位到低位,2字的访问密码的最高位在第一字,如果电子标签没有设置访问密码,则访问密码部分可以为任意值,但不能缺失。填写需要写入的数据(图3-1中4),点击写(图3-1中5),左下角看到“写数据”按钮执行成功,点击“读”按钮则右边框中显示读取到的数据(图3-1中6 ),点击“清除显示”即可清空数据显示区内容。

图3-1


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12565053.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存