安路FPGA 100问-Anlogic-安路论坛-FPGA CPLD-ChipDebug

安路FPGA 100问

TD软件支持哪些操作系统?

TD软件支持主流的操作系统Windows7-32bit、Windows7-64bit、Windows10-64bit、Linux。

安路的文档在哪里获取?

安路官网(http://www.anlogic.com)有下载。

首先要注册账号,然后在官网上留言申请开通权限。开通下载权限后即可下载大部分文档资料。也可以向FAE寻求支持。

ELF系列是CPLD还是FPGA?

ELF系列的逻辑实现部分是基于查找表(LUT)的FPGA架构,资源丰富、性能高。集成了Flash用于存储位流,又实现了传统CPLD所需要具备的上电立刻启动特性。所以ELF系列可以称为FPGA,也可称为增强型CPLD。

调试FPGA时,TD软件是否支持内部逻辑分析(抓波形)功能?

TD内置ChipWatcher工具,支持设定触发条件,并抓取、显示FPGA内部信号。

20231224152302748-image

市场有些FPGA产品标明的逻辑资源为100万门,安路器件怎么选型?

在FPGA产品出现的早期,为了让客户评估逻辑容量,使用了ASIC的门概念。但是这个ASIC门和查找表的变换系数没有一个统一的标准,各家各说,客户容易误解。一般来说30~80门相当于1个4输入LUT。 大家对于FPGA都比较熟悉了,而且厂家、器件型号很多。现在FPGA厂商的Datasheet里都提供了等效逻辑单元(LE)参数,逻辑单元(1个4输入LUT、1个寄存器)。根据逻辑单元的数量,就可以在不同FPGA产品里找到对应的型号了。

TD没有嵌入仿真工具,如何仿真?

在TD安装目录下的sim文件夹中包含了各个系列FPGA器件的行为模型描述文件,用户可自行在ModelSim里把描述文件编译为器件的库文件,然后在仿真时调用编译后的库文件即可。

支持RTL功能仿真和带延时的后仿真。

需要注意的是编写仿真激励需要调用glb()函数,具体可《 TD软件手册》,在TD菜单栏Help下拉菜单可直接打开。

ELF有几个系列产品?

安路ELF前后推出了3代产品,推荐客户使用EF2、EF3系列,它们采用了成熟的55nm工艺,发货量大,性价比高。

PH1器件支持PCIe接口,请问是硬核吗?

PH1集成了一个高性能的PCIe硬核,支持x1、 x2通道,Gen1、Gen2、Gen3。

EF2有哪些器件可供选择?

详情请参考EF2器件数据手册,这里把选型表列举如下:

20231224152444779-image

TD软件的全称是什么,License如何获取?是否需要收费?

安路提供的开发套件全称是Tang Danasy,简称为TD。

当前TD软件一般自带6个月的免费的License,如果没有License或过期,可以向安路或者代理商的Sales、FAE申请获得。

从哪里可以获取到安路最新的文档和技术资料?

安路的官方网址为:http://www.anlogic.com

官方网址提供了最新的文档和技术资料,以及TD软件的下载。

也可以直接向销售和FAE寻求支持。

安路的主要产品有哪些?

上海安路信息科技有限公司成立于2011年,总部位于浦东新区张江高科技园区。安路科技专注于为客户提供高性价比的可编程逻辑器件(FPGA)、可编程系统级芯片(SoC)、及相关EDA软件工具和创新系统解决方案。

安路科技量产和在研产品分为三个系列:高端PHOENIX(凤凰)、中端EAGLE(猎鹰)、低端ELF(精灵)。

安路研发中心在哪里?

安路研发中心坐落在上海张江高科,同时在全国各重点城市都有销售和技术支持团队。

安路有工业级器件吗?

安路有提供工业级器件可供客户选择,一般定义的工业器件支持的结温范围:-40℃~100℃,具体以Datasheet为准。

安路的CPLD可以支持在线升级不?

可以支持。

在线升级可通过JTAG实现,也支持JTAG菊花链。MCU通过GPIO模拟产生JTAG接口时序,安路提供了可供MCU运行的参考C代码,用户只要做少许移植即可。

在线升级也可以通过Local Bus、UART、I2C、SPI、Ethernet等接口实现,但需要通过CPLD内部逻辑搭建升级通路,安路已提供参考方案。

借助于EF2、EF3支持的双启动功能,Flash里可以保存两个位流,Golden区域用作备份,可大大提高在线升级的安全性。

安路器件支持的调试方式有哪些?

安路提供3种调试工具

1. ChipWatcher:通过ChipWatcher,用户无需借助外部设备即可在线监测电路内部信号的变化情况。

在ChipWatcher 中,用户可同时添加多个信号,在设置信号的采样时钟、采样深度、触发条件及触发位置后,经过重新编译、下载和触发,即可查看到指定条件下的信号变化情况。

2. ChipProbe:使用ChipProbe 用户可 在不改变设计 的 情况下,将内部的一些信号 引出到 IO端

口,从而可 让用户用外部设备实时检查内部信号 的变化情况。

3. BRAM Editor:用户可以使用BramEditor从读取FPGA中的RAM数据,并可对这些数据进行修改,

修改后写进FPGA,即可看到实时改动效果。

这3种调试工具,更具体的操作细节可参考TD附带的《软件手册》,可从TD软件的Help/Software User Guide菜单里直接打开。

安路的CPLD可以支持级联不?

安路的EF2、EF3系列支持通过JTAG级联。

在TD软件的device chain工具里可以生成级联编程操作所需要的SVF等文件。

安路可以提供样品不?

安路大部分器件,都可以提供样品,支持客户的早期项目开发。

具体可以联系相关销售。

安路软件如何获取?

安路的官方网址为:http://www.anlogic.com

官方网址提供了最新的文档和技术资料,以及TD软件的下载。

也可以直接向销售和FAE寻求支持。

安路产品有相关的硬件设计指南不?

为了帮助客户更快速、可靠地使用好FPGA,安路绝大部分器件都有提供硬件设计指南,以及CheckList文档,官网(http://www.anlogic.com)有下载。也可以向FAE寻求支持。

安路CPLD支持热插拔不?

安路的EF2、EF3系列器件的绝大部分IO支持热插拔,但也有少数IO在热插拔设计时需要避开。

具体可以参考对应器件Datasheet中的热插拔部分。

安路CPLD可以支持背景升级不?

可以支持。

在Device Chain工具中,勾选bg模式(即为背景设计模式),烧写外部SPI Flash时,不中断当前FPGA里正在运行的逻辑功能;而不勾选bg模式,烧写外部SPI Flash前,先停止当前FPGA里正在运行的逻辑。

安路CPLD的IO上下拉的阻值范围?

IO上下拉是通过电流源来模拟一个电阻,电流源的范围是35uA~250uA,典型值为100uA。上下拉电阻的阻值可以用V/I换算得到,例如VCCIO=3.3V:

– 阻值最小为3.3V/250uA=13.2K

– 阻值最大为3.3V/35uA=94.3K

– 阻值典型值为3.3V/100uA=33K

ERAM用作简单双口RAM时,哪个信号可以作为wren使用?

可以使用cea信号作为wren使用。

多片fpga组成jtag链的时候如何加载?

TD软件的Download工具暂时只支持单颗器件的JTAG加载。多片FPGA级联的情况,可使用TD软件的Device Chain工具,生成支持级联的SVF文件并进行加载。

使用Device Chain的SVF for SPI加载模式时,bg模式和rf模式有什么区别?

这两个选项的作用是不同的:

1. 勾选bg模式,烧写外部SPI Flash时,不中断当前FPGA里正在运行的逻辑功能;不勾选bg模式,烧写外部SPI Flash前,先停止当前FPGA里正在运行的逻辑。

2. 勾选rf模式,烧写外部SPI Flash完成后,会执行一条刷新指令,使FPGA立刻加载新的位流;不勾选rf模式,烧写外部SPI Flash完成后,不会执行刷新指令。

这里要注意的是,如果原有FPGA逻辑功能里会访问SPI Flash,即设置了persist_bit=0,就不能支持勾选bg模式的操作。

使用计数器生成内部复位的推荐写法?

推荐使用两级计数器生成内部复位信号,这样可以保证复位信号的宽度符合预期。推荐写法如下:

reg  [3:0]  rst_init_cnt;
wire       rst_init_n;
reg  [15:0] rst_temp ;
reg        SYS_RST_N;
always @(posedge clk) begin
   if(rst_init_cnt <4'h8) 
    rst_init_cnt <= rst_init_cnt + 1;
   else 
    rst_init_cnt <= rst_init_cnt ;    
end 

assign rst_init_n = rst_init_cnt[3]; 

always@(posedge clk or negedge rst_init_n) begin
 if (rst_init_n == 1'b0) 
  rst_temp <= 'd0;
 else if(rst_temp < 16'd50000)
  rst_temp <=rst_temp + 1'b1;
 else 
  rst_temp <=16'd50000;
end   

    
always @(posedge clk or negedge rst_init_n) begin
 if (rst_init_n == 1'b0) begin
  	SYS_RST_N <=1'b0; 
 end
 else if(rst_temp>32'd5&&rst_temp < 16'd30000) begin
  	SYS_RST_N <=1'b0;
  	if (rst_temp < 2000)
 	else
 end
 else  begin
  	SYS_RST_N <=1'b1;
 end
end

如何提高CPLD加载速度?

有两个参数可以调整器件从SPI Flash中加载的速度:

1. 在TD软件中修改Device Option中的加载模式为SPIx4;

2. 在TD软件中修改Properties->Generate Bitstream->Control Option中的mclk_freq_div参数,建议加载速度(mclk_freq_div)的选择最高到24M。

EF2系列最快加载时间12ms左右,EF3系列最快38ms,具体信息可参考各系列的《Flash启动加载时间测试》 文档。

具体修改流程,也可以参考易点通视频:

https://mp.weixin.qq.com/s/UZcdYi5dwEmE-HVkH3k1_A 

输出时钟是否需要用专用GCLK IO

GCLK IO只作用于输入时钟,而输出时钟使用普通IO即可。

IOBB类型的IO需要注意什么

EF2系列器件、EF3L15、EF3L25器件的一部分IO属于IOBB类型,使用建议如下:

1. 做输出时,驱动电流和SlewRate不可调节,建议输出信号线预留串阻。  

2. 做输入时,不建议接入时钟信号,尤其是上升沿较缓(20%~80%超过10ns)的时钟信号。如果是慢速变化的信号,可以接到IOBB,但建议逻辑用时钟采样一拍再使用。

EF2/ EF3/EG4系列产品是否可以支持单电源供电?

EF2/EF3 系列可以支持,但是单电源VCCAUX供电电压要大于等于2.5V,EG4系列不支持单电源供电,需要1.2V的核电压。

EF2/ EF3系列产品加载时间最快多久?

有两个参数可以调整器件从SPI Flash中加载的速度:

1. 在TD软件中修改Device Option中的加载模式为SPIx4;

2. 在TD软件中修改Properties->Generate Bitstream->Control Option中的mclk_freq_div参数,建议加载速度(mclk_freq_div)的选择最高到24M。

EF2系列最快加载时间12ms左右,EF3系列最快38ms,具体信息可参考各系列的《Flash启动加载时间测试》 文档。

具体修改流程,也可以参考易点通视频:

https://mp.weixin.qq.com/s/UZcdYi5dwEmE-HVkH3k1_A 

EF2、EF3系列最大功耗多少?

EF3可以参考TN609文档,EF2可以参考TR403文档 。

逻辑器件的功耗与资源使用率、时钟频率、环境温度等条件相关,建议使用TD软件的Tools->Power Estimator功耗评估工具进行评估。

EF2、EF3、EG4、AL3系列 差分输入管脚内部有100欧姆匹配电阻吗?

首先要看IO类型,支持真差分的IO内部具有100欧姆匹配电阻,而伪差分IO内部没有匹配电阻。具体请参考各个器件的Datasheet。

备注1:真差分IO可配置使用内部匹配,也可以外部匹配。 

备注2:差分输入摆幅超过500mv,必须使用外部匹配电阻。

如何区分真差分和伪差分管脚?

管脚名字中带“E”的PN对是伪差分管脚,不带“E”的PN对是真差分。E表示Emulated。

20231224153234917-image

PH1A100是否支持DDR3,DDR4?

不支持

mslice超标该如何解决?

可以尝试打开TD,选择process->properties->Read Design->infer_add,调整该属性的开关。如果还没有解决,建议联系FAE。

安路CPLD可否提供内部时钟?

EF2、EF3系列器件,内部集成了振荡器,可以输出时钟,中心频率约为266M,频率误差为30%。高精度场景不建议使用;

TD每次运行完后bit文件是否一致的?

安路的TD软件支持回溯特性,但也是有条件的:同一个操作系统版本、同一个TD软件版本、同样的Verilog/VHDL代码、同样的约束(adc、sdc)、同样的TD软件属性设置,这几个条件满足的话生成的bit文件是一致的。

TD软件是否支持PLL、bram等的位置约束?

支持,可以参考TD软件help下拉菜单中software userguide内容,约束例子如下:

set_inst_assignment {PLL_INST1} {location = x34y37z0;}

安路工程怎么出一键式编译脚本?

首先按照正产流程将工程跑一遍,然后再选择TD软件界面Project->Export  tcl file for the flow,就导出了一键式编译脚本。

具体可以参考TD软件手册,导出TCL脚本章节。

TD软件是否支持verilog,VHDL,Verilog和VHDL混合编译?

支持。

安路器件失效率为多少?

不同的器件提供各自的失效率报告,请联系销售获取报告。

JTAG链支持多少级?

JTAG级联本身没有限制,但从实际应用上,为了满足JTAG信号和时序的要求,一般不能超过10级。

备注:如果级联时需要擦写存储位流的Flash,EF2、EG4、AL3器件必须放置在JTAG链路的前三级。

FIFO IP与RAMFIFO IP有何不同?

FIFO IP是使用了BRAM块内嵌的硬件FIFO控制硬核,不需要额外消耗LUT资源;

RAMFIFO IP的FIFO控制器是由LUT资源搭建的,属于软核,该IP主要为了解决FIFO IP没有引出指示FIFO中还有多少数据的rdusedw、wrusedw参数。

ChipWatcher找不到信号怎么办?

找不到想看到的信号,可能是信号名未被继承或信号被优化了,可以在定义信号的地方添加keep综合指令避免该信号被优化或改名,例如 (*keep*) reg a;reg a;//synthesis keep; 

安路平台如何在Modelsim上做仿真?

在TD安装目录下的sim文件夹中包含了各个系列FPGA器件的行为模型描述文件,用户可自行在ModelSim里把描述文件编译为器件的库文件,然后在仿真时调用编译后的库文件即可。

支持RTL功能仿真和带延时的后仿真。

需要注意的是编写仿真激励需要调用glb()函数,具体可《 TD软件手册》,在TD菜单栏Help下拉菜单可直接打开。

安路官网上的文档如何下载?

安路官网(http://www.anlogic.com)有下载。

首先要注册账号,然后在官网上留言申请开通权限,开通下载权限后即可下载大部分文档资料。也可以向FAE寻求支持。

物理约束文件ADC可做哪些约束?

ADC除了可约束用户IO的物理位置IO特性外还可以对片内物理单元(PLL,EMB、DSP等)和用户代码中具体单元进行位置约束。

具体可参考TD软件附带的软件手册里位置约束章节。

时序约束文件SDC支持哪些约束?

SDC主要约束时钟信号、输入输出延时,伪路径约束等,图形界面下列出来的约束项TD软件都支持。

具体可参考TD软件附带的软件手册里时序约束章节。

安路CPLD如何生成svf文件?

点击菜单样tools选择 device chain,点击add按键,添加bit文件,之后点击creat svf,选择 svf for spi,点击ok 在工程目录下会生成一个al_devicechain的文件夹,生成的SVF文件保存在此文件夹下。

在做硬件设计时,PH1器件中TRSTN(CFGBVS)管脚应该如何设计?

TRSTN应该通过上下拉电阻接电源和低,TRSTN通过1k下拉时可以进行FPGA的调试,通过4.7k或10k上拉时,可以进行FPGA  SERDES的调试。

建议外部上、下拉电阻都接上。

EF2、EF3、EG4的加载时,对于时钟信号的质量要求,如JTAG加载的TCK,从串、从并加载的SCLK等有什么样的要求和建议?

时钟信号要求:边沿单调无回沟,从10%~90%小于10ns,建议在时钟源端串接一个33欧电阻,用于调整阻抗匹配,提高信号质量。

如果不能满足小于10ns的需求,需要打开引脚的Hysteresis(迟滞)功能。EF2 系列器件FPGA 中IOBB 管脚无法设置,Hysteresis 开关设置只存在于IOBE 类型管脚,其它器件IO 均为IOBE 类型,均可开启输入迟滞功能。

但是加载过程中TCK、SCLK的IO属性不能做配置调整,不支持Hysteresis(迟滞)功能,需要用户自行保证信号质量。

如果差分对做单端时钟输出,如P端作为时钟输出,另一端应该如何使用?

物理上是支持差分的P、N端都配置为单端输出,但如果对于输出时钟的相噪有较高要求,不建议输出混用,建议另一端电阻接地做屏蔽。

安路器件True LVDS 与Emulated LVDS 是否均可作为LVDS25 标准输入,最大输入频率是多少?

是的,均可作为LVDS25 标准输入,最大输入频率为400 MHz(800Mbps)。

安路哪些器件可以支持mipi接口?

EF2器件自带mipi_io,可直接支持mipi信号的接收、发送,其他器件也可以使用真差分管脚支持HS模式,配合普通IO支持LP模式。

EF2的MIPI_IO如何在ADC文件中约束?

需要mipi_io时,只需在代码中调用mipi_io这个模块,然后在ADC中将管脚约束真差分管脚的P端即可。参考文档《TN403_ELF2 MIPI接口用户指南 》。

安路器件差分对可以设置输出信号的电压和摆幅么?

安路器件的差分对可以通过ADC约束文件设置输出差分信号的,共模电压(VCM)和差模摆幅(VOD),约束语句如下:

set_pin_assignment{clk_ref_m_fpga}{LOCATION=A3;IOSTANDARD=LVDS25;VCM=0.8;VOD=350m } 

参考文档《差分对的VCM和VOD设置指南》

安路器件配置管脚可以做用户IO使用么?

可以,但PROGRAMN、INITN、DONE等信号的复用可能会导致重新加载等问题,不建议作为输入。但是可以作为输出管脚使用,并加上拉电阻。

安路哪些器件自带大容量内部储存器?

EF2S45,AL3S10,EG4S20,EG4D20都带有64M-128M的大容量存储器,具体细节请参考选型表和规格书。

TD软件有使用指南吗?

TD软件安装后,会自带软件手册,可通过Help/Software User Guide菜单打开。然后可打开全中文的软件使用手册。

20231224154002973-image

网上下载的TD软件,安装后没有License文件,到哪里找?

安路软件一般自带6个月的免费License,如果没有License或有过期警告,可以再官网工具与资料下载->软件工具->TD License进行下载

TD支持哪些硬件描述语言,支持混合语言吗?

TD软件支持Verilog、VHDL、System Verilog,也支持这几种语言的混合编译。

安路CPLD加载启动时间如何调整?

有两个参数可以调整器件从SPI Flash中加载的速度:

1. 在TD软件中修改Device Option中的加载模式为SPIx4;

2. 在TD软件中修改Properties->Generate Bitstream->Control Option中的mclk_freq_div参数,建议加载速度(mclk_freq_div)的选择最高到24M。

EF2系列最快加载时间12ms左右,EF3系列最快38ms,具体信息可参考各系列的《Flash启动加载时间测试》 文档。

具体修改流程,也可以参考易点通视频:

https://mp.weixin.qq.com/s/UZcdYi5dwEmE-HVkH3k1_A 

如何调用CPLD内部Flash?

安路EF2、EF3系列器件中,合封了一块大容量SPI接口Flash,用于存储配置位流。位流未占用的部分,用户也可以读写访问。使用方法是在代码中例化一个原语引出SPI Flash的硬件接口,如EF2的原语如下:



module EF2_PHY_INTFLASH ( 

    mosi_io0,

    miso_io1,

    wp_n_io2,

    hold_n_io3,     

    cclk,

    cs_n

);

inout mosi_io0;    //PT6D

inout miso_io1;    //PT23B

inout wp_n_io2;    //PT20D

inout hold_n_io3;  // PT9D

input cclk;        //PT9B

input cs_n;        //PT11D

endmodule

备注:通过原语访问SPI Flash,同时需要设置Properties->Generate Bitstream->Control Option中persist_bit=0。

请登录后发表评论

    没有回复内容