agm micro是领先的可编程soc、通用32位mcu、和异构(mcu)边缘计算芯片和方案提供商,致力于为消费电子、工业和aiot中高量市场提供智能化的设计软件和芯片系统。agm针对不同的纵向应用市场,并拥有19个知识产权,以及获得专利的编译软件(包括数据库、综合、布局、布线、时序分析、比特流产生等)及电路。公司的所有芯片产品线均达到接近asic的低成本,并兼具灵活性。
以下是agm fpga的一份快速入门介绍,限于篇幅,如有不详尽的地方,欢迎留意或者邮件沟通交流。
3. 设计流程 从新建工程一步一步操作,直到生成编程文件,烧录到目标器件上。此部分将supra和quartus ii一起配合使用。
3.1 在supra中新建工程 打开 supra,新建工程(file->project->new project),设置工程目录和工程名称。具体步骤如下:
1、 准备工作:在电脑上先建立一个保存agm项目工程文件的文件夹。比如在d盘,建立一个agm_project\led_pll的文件夹。并将使用内置晶振的inpll.v和inpll.ip这2个文件放在该文件夹的目录下。(若不需要使用内置的时钟及pll,则导入inpll.v和inpll.ip的步骤可以忽略)。
2、 打开supra软件新建工程;
图 3.1 在supra中新建工程
3、 选择保持路径及输入工程名称;
保存的目录选择d:\agm_project\led_pll,project name的框内输入工程名称:led。然后点击save保存工程。
图 3.2 选择保存位置及输入工程名称
点击save后,弹出的对话框点ok。
4、 工程转换(migrate);
选择菜单: ”tools -> migrate” ,或者点击migrate按钮。
图 3.3 菜单选择
target directory:是默认选择当前的工程目录,无法修改;
select migrate from directory:不填;
input design name:输入设计名称(例如这里填入:led);
select device:从下拉菜单中选择ag1280q48;
select ve file:不填;
select ip file(s) :点击browse,在led_pll工程目录下导入事先保存的inpll.ip;
(注意:1、因为该例程使用了芯片内部集成的晶振,所以需要导入此inpll.ip。若是不需要使用晶振,则不需要导入inpll.ip。
2、现在设的这个pll的模块inpll.ip,test1输出大约37m,test2输出62mhz,芯片不同略有不同;)
将上述信息设置完成后,如图 3.4所示,点击next。
图 3.4 migrate 窗口设置
5、点击 next后,出现如图 3.5所示的画面。软件会生成一个以 led 命名的quartus ii格式的project文件,。下一步操作切换到quartus ii软件中继续进行。
图 3.5 migrate设置完成
3.2 在quartus ii中进行hdl设计 打开quartus ii, 然后选择open project…,打开上一步在supra中建立的led project。
图 3.6 quartus ii中打开supra建的工程
图 3.7 在quartus ii打开led.qpf文件
led的工程已经建立好,在quartus ii中,对应选择的器件是ep2c70f896c8,这个不用关注,只需要在quartus ii中编写hdl代码,综合等。
图 3.8 在quartus ii中编写hdl代码
hdl程序编写完成点保存,然后选择菜单栏的processing-àstart compilation。编译如果提示有错误,就对代码进行修改,直到没有error提示为止。
图 3.9 hdl程序编译
编译若有错误,可以根据下面的报错提示,如”led” is undfined( led未声明),故需要修改hdl代码。
图 3.10 qurtus ii 错误报告
在led.v的程序代码中,将module名称从led修改为led,然后点击保存。以后修改原设计,在quartus ii里只需执行正常的编译(start compilation)。
图 3.11 修改程序后,重新编译
重新再编译,等编译通过后, 在quartus ii 中选择菜单中 tools -> tcl scripts...。
注意:tcl scripts...只需要在第一次新建工程的时候需要执行,后续修改hdl代码,compile通过后,不需要再执行tcl scripts...。
图 3.12 tcl 操作
在tcl scripts窗口中选 af_quartus.tcl,点击 run。
图 3.13点击 run进行编译
中间会弹出命令窗口,不用理会,后台会自动处理。
图 3.14 临时弹出命令窗口
图 3.15 执行tcl操作完成后提示通过ok
如下图,点击ok。
图 3.16 编译成功
3.4 功能引脚分配 quartus ii 里编译成功后,在工程目录d:\agm_project\led_pll中,找到led.asf 文件。
图 3.17 打开工程目录下的管脚配置文件led.asf
该led.asf文件可以通过记事本打开,也可以直接拖动到quartus ii中打开。led.asf文件初始状态是一个空文档,打开后是一片空白,用户可以直接编辑管脚分配说明,(具体请参考芯片的管脚映射列表,确定 io 名称及位置),注意:pll 的输入时钟必须是芯片的全局输入时钟管脚(ag1280q48的是pin_13,pin_15,pin_19 这三个)。led.asf的管脚指定描述如下。led.asf文件内容如图 3.18所示,编辑完成后,点击保存即可。
set_global_assignment -name reserve_all_unused_pins weak_pull_up
set_location_assignment pin_13 -to clk
set_location_assignment pin_20 -to rst
set_location_assignment pin_1 -to test1
set_location_assignment pin_2 -to test2
set_location_assignment pin_44 -to led[0]
set_location_assignment pin_45 -to led[1]
set_location_assignment pin_46 -to led[2]
set_location_assignment pin_48 -to led[3]
set_instance_assignment -name weak_pull_up_resistor on -to rst
注意:1、器件的引脚序号,qfn48封装的序号是从1一直到48,除了当中的电源vcc、gnd和jtag引脚不能作为使用,其他的普通的i/o都可以分配使用。
2、clk信号必须要通过名称为io global的全局引脚接入,否则可能导致无法分配引脚。
3、reset信号也建议从io global的全局引脚接入。
图 3.18 编写管脚配置文件
补充,ag1280q48的引脚定义如下:
图 3.19 ag1280q48 pinout
3.5 在supra中进行项目编译 返回supra 中,点击next,开始进行编译,参数按照默认的。如图3.20和图3.21所示。
图3.20 点击next
图3.21 保持默认参数
参数保持默认的,然后点击finish,软件后台将进行布局布线等操作。等待软件提示成功,如图3.22所示。
图3.22 设计编译成功
编译成功后,软件将自动生成烧写文件,led_hybrid.prg。
3.6 芯片烧写 在supra 软件菜单栏中选tools ---à program,或者点击program图标。选中 designname_hybrid.prg,这里我们选择led_hybrid.prg,然后点击program开始程序烧写。烧写成功后,cdone 管脚会变高。
三星GalaxyS22系列邂逅春日美景,轻松拍摄质感大片
克服端口顺序影响,使用PCAN实现固定设备ID/通道分配
振动变送器安装方式
大云5.0,5G时代应用而生
频带为435MHz, 2.45 GHz 和5.8 GHz的RFID射频天线的选择与配置分析
国产AGM FPGA设计流程的详细介绍
X-RiSAWOZ: 高质量端到端多语言任务型对话数据集
订单减少!华为供应商员工分批放假3个月!
WiMAX的关键技术及R&S无线测试仪CMW270全系列测试解决方案
聊一下汽车嵌入式开发中的ECU网关节点
如何用FPGA并行高速运算实现实时的引导滤波算法
黄曲霉检测仪的产品性能如何,它有哪些特点
格林精密首次IPO大客户并提升和加强精密结构件及模具的性能
干货 | 单片机编程设计需要好方法
渗透到日本各行业的机器人,日本机器人产业为何能发展得这么好?
RFID系统安全分析
车载主机的MD播放
关于重载AGV小车,它的未来发展前景怎么样
打破医疗耗材伽马屏障的新记忆
人民日报点赞美团单车数字人民币试点:推动生产生活方式绿色变革