高云1N1开发板高云gowin软件使用教程 您所在的位置:网站首页 character软件教程 高云1N1开发板高云gowin软件使用教程

高云1N1开发板高云gowin软件使用教程

2023-03-23 00:13| 来源: 网络整理| 查看: 265

国产FPGA是最近几年起来的产品,具有性价比高特点。高云FPGA,很多用户都用在LED,电机控制,PLC设备上。

开发板子采用GW1N-LV1QN48C6/I5 FPGA器件。具有低功耗,瞬时启动,高安全性,低成本,方便扩展等特点。本开发板价格价格便宜,板子扩张性容易,帮助用户比较快递进入国产FPGA学习能力。

开发板集成多个GPIO接口和多个LVDS接口,电压可以从3.3,2.5,1.8,1.2V选择。用户可以选择不同电压适配不同的IO口。其中每个VCCIO也是独立供电,可以很简单改装成其他的不同bank不同电压要求。

芯片资源GW1N-1的资源有1K的LUT4,并且还有4个18K SRAM快,一个PLL锁相环。

封装有最小的CS30的封装,也有QN32,QN48,LQ100,LQ144这类封装。灰色线代表是兼容封装。其实芯片同等封装都是类似的电源和地,IO管脚有差别。

板子上两排引脚名称都已经标记了锁定管脚的名称。用户很容易使用该平台。

2. 高云FPGA软件使用教程

         高云设计软件在 http://cdn.gowinsemi.com.cn/Gowin_V1.9.1.01Beta_win.rar 直接复制就可以下载,关于license 可以在官网申请就可以,但是必须要有公司名称和电话号码。

         双击桌面的 图标进入软件,设定软件的license。 在help中选择mange license。

选择本地license文件。选择对应文件browse 选择文件。Save就可以保存设定。这个窗口还可以设定license文件,会跳到官方网站申请。

另外还得设定synplify软件路径。在个人用户变量的LM_LICENSE_FILE设定gowin的 synplify的 编译软件的license位置。

建立一个工程,选择FILE-NEW或者桌面quick start中new project

输入工程的名字和位置.

选择芯片类型GW1N系列,Device为GW1N-1,Package选择QFN48,SPEED选择C6/I5.

把blink-led文件复制到工程中src中.

在design中增加文件.

   

选择process选项卡

        

选择synthesize综合当前文件.

再双击user constraints,选择floorplanner.

在打开的floorplanner的窗口,可以看到ports名称,底部有几个选择项。

选择I/O Constraints设定管脚位置,电压。

Led[0]设定在11,IO Type设定为lvcmos33,Led[1]设定在9,IO TYPE设定为LVCMOS33,sys-clk50m在27管脚,IO Type为LVCMOS33。

选择保存文件。关闭floorplanner软件。

         在主程序中,选择design,看到有一个cst文件就是管脚约束文件,设定IO和电压要求。

         再次选择process,右键选择configuration。配置其中DONE管脚为普通IO管脚。

在配置窗口选择,DUAL-PUROSE pin 选择 USE DONE as regular IO,设定为普通的IO功能。

         双击place&route 或者右键选择run。

完成布局布线操作以后,选择program device。

开发板上面下载线缆连接对应的管脚。

        插入gowin下载器和电源

 

         整个设备连接如下

 

选择scan的按钮,找到芯片。

选择operation ,设定为SRAM Program。Filename选择impl/pnr/blink-led.fs文件,save保存

选择箭头,编程设备。

         上述是SRAM烧录,这个烧录掉电以后是不会存在的。

由于软件存在bug问题,所以要关闭一次program软件,再打开。选择embedded flash mode,选择embflash erase,program。选择save。

再次选择箭头,烧录内部flash。

如果再烧录其他的模式,记住必要重新打开一次烧录软件。

代码内容。blink_led.v

module blink_led ( input sys_clk50m, output[1:0] led ); // wire sys_clk50m; // GW_OSC osc_inst ( .oscout(sys_clk50m)) ; localparam clk500ms = 50_000_000; reg[31:0] clk_count; always @(posedge sys_clk50m) begin if( clk_count ==clk500ms) clk_count


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有