0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【紫光同创国产FPGA教程】【第十三章】字符显示实验

FPGA技术专栏 来源:芯驿电子科技 作者:芯驿电子科技 2021-02-19 13:43 次阅读

原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处(alinx.com)。

1. 实验简介

HDMI测试实验中讲解了HDMI显示原理和显示方式,本实验介绍如何使用FPGA实现字符显示,通过这个实验更加深入的了解HDMI的显示方式。

2. 实验原理

实验通过字符转换工具将字符转换为16进制coe文件存放到单端口的ROM IP 核中,再从ROM 中把转换后的数据读取出来显示到HDMI上。

3. 程序设计

字符显示例程是在HDMI显示的基础上增加了一个osd_display的模块,“osd_display”模块是用来读取存储在Rom ip核里转换后的字符信息,并在指定区域显示。程序框图如下图所示:

o4YBAGAvT_yAGQiGAAA0HZw7GNc535.jpg

osd_display模块包含timing_gen_xy 模块和osd_rom模块。Osd_rom里存储的字符数据,如果数据为1,OSD的区域显示ROM中的前景红色(显示ALINX芯驿),如果数据是0,OSD的区域显示数据为背景色(彩条)。

在“timing_gen_xy”模块是根据HDMI时序标准定义了“x_cnt”和“y_cnt”两个计数器并由这两个计数器产生了HDMI显示的“x”坐标和“y”坐标。程序中用“vs_edge”和“de_falling”分别表示场同步开始信号和数据有效结束信号。其原理如下图所示:

pIYBAGAvT_2AFtmEAABmJ64Do0c073.jpg

信号名称 方向 说明
rst_n in 异步复位输入,低复位
clk in 外部时钟输入
i_hs in 行同步信号
i_vs in 场同步信号
i_de in 数据有效信号
i_data in color_bar数据
o_hs out 输出行同步信号
o_vs out 输出场同步信号
o_de out 输出数据有效信号
o_data out 输出数据
x out 生成X坐标
y out 生成Y坐标

timing_gen_xy模块端口

下面介绍如何存储文字信息的ROMIP,首先需要生成能够被Pango FPGA识别的.dat文件。

1)在软件工具及驱动文件夹下找到“FPGA字模提取”工具。

2)双击.exe文件打开工具

pIYBAGAvT_2AD7r_AABAAhLlCps955.jpg

3)在提取工具的“字符输入”框中输入需要显示的字符,字体和字符高度可以自定义选择。设置完成后点击“转换”按钮,在界面左下角可以看到转换后的字符点阵大小,点阵的宽和高在程序中是需要用到的

o4YBAGAvT_6ABNhqAAChU9xGe7Y686.jpg

点阵的宽和高这里位152x33需要跟osd_display程序中定义的一致:

pIYBAGAvT_-Ab0ppAAAMb5PVhDQ360.jpg

4)点击“保存”按钮,将文件保存到本例程源文件目录下,需要注意的是在保存类型下应该选择PGL(*.dat),点击“保存”按钮即可。

o4YBAGAvT_-AOkFVAABu3a_ckAE202.jpg

转换后的字符已经成了8bit的数值文件,一个字节代表8个时钟的像素,所以在从Rom IP核中读取dat文件的值,需要判断每一位的值,如果值为1,显示红色前景色,否则显示背景色:

always@(posedge pclk)begin if(region_active_d0 == 1'b1) if(q[osd_x[2:0]] == 1'b1) v_data <= 24'hff0000; else v_data <= pos_data; else v_data <= pos_data;end

5)调用单端口Rom IP核的过程和调用其他IP 核一样,打开菜单下的“IP Compiler”, "并按如下进行设置:

pIYBAGAvUACAAHAFAABI3TbOOl0333.jpg

在弹出的界面中地址位宽、数据位宽、dat文件及类型进行设置,设置完成后按Generate即可生成osd_rom IP:

o4YBAGAvUAGAEJyRAAAsl5SpD1I978.jpg

Rom IP核在“osd_display”模块中例化如下:

osd_rom osd_rom_m0( .address(osd_ram_addr[15:3]), .clock(pclk), .q(q));
信号名称 方向 说明
rst_n in 异步复位输入,低复位
pclk in 外部时钟输入
i_hs in 行同步信号
i_vs in 场同步信号
i_de in 数据有效信号
i_data in color_bar数据
o_hs out 输出行同步信号
o_vs out 输出场同步信号
o_de out 输出数据有效信号
o_data out 输出数据

osd_display模块端口

4.试验现象

连接好开发板和显示器,连接方式参考《HDMI测试实验》教程,需要注意,开发板的各个连接器不要带电热插拔,下载好试验程序,可以看到显示器显示以彩条为背景的字符。开发板做为HDMI输出设备,只能通过HDMI显示设备来显示,不要试图通过笔记本电脑的HDMI接口来显示,因为笔记本也是输出设备。

默认字符显示的位置在X坐标和Y坐标都是9的地方显示,另外用户可以修改下面的pos_y和pos_x的判断条件将字符显示在显示屏的任意位置:

o4YBAGAvUAKAGkvZAAAKcj8OzpM678.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1601

    文章

    21296

    浏览量

    593036
  • HDMI
    +关注

    关注

    32

    文章

    1487

    浏览量

    149710
  • ROM
    ROM
    +关注

    关注

    4

    文章

    524

    浏览量

    84805
  • 字符
    +关注

    关注

    0

    文章

    229

    浏览量

    24885
  • 紫光同创
    +关注

    关注

    4

    文章

    68

    浏览量

    27244
收藏 人收藏

    评论

    相关推荐

    紫光同创FPGA有哪些型号

    请问紫光同创FPGA有哪些型号?分别用于什么场景?
    发表于 01-24 10:48

    国产FPGA介绍-紫光同创

    紫光同创紫光集团旗下紫光国微的子公司,成立于2013年,有十余年可编程逻辑器件研发经历,布局覆盖高中低端FPGA产品。 早在2015年,
    发表于 01-24 10:45

    2024新品|紫光同创盘古系列FPGA开发板套件,100%国产化方案

    专业厂商紫光同创生态合作伙伴,小眼睛科技一直深耕FPGA产品和解决方案,基于紫光同创器件,推出100%
    发表于 12-28 14:18

    紫光同创FPGA开发套件,高性能国产FPGA方案

    紫光同创FPGA开发套件,高性能国产FPGA方案,100%国产化,全系列产品,方案可定制,满足多
    发表于 11-16 17:25

    基于紫光同创PGL25G的FPGA方案~

    基于紫光同创PGL25G的FPGA方案展示@小眼睛FPGA~
    发表于 11-02 18:00

    基于紫光同创PGL50H-6IFBG484的光端机方案

    基于紫光同创PGL50H-6IFBG484的光端机方案展示#小眼睛FPGA#紫光同创#国产
    发表于 11-02 17:44

    紫光同创PGL22G开发板|盘古22K开发板,国产FPGA开发板,接口丰富,高性价比

    盘古22K开发板是基于紫光同创Logos系列PGL22G芯片设计的一款FPGA开发板,全面实现国产化方案,板载资源丰富,高容量、高带宽,外围接口丰富,不仅适用于高校教学,还可以用于
    发表于 09-21 18:16

    紫光同创PGL22G开发板|盘古22K开发板,国产FPGA开发板

    ​ 本原创文章由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处 盘古22K开发板是基于紫光同创Logos系列PGL22G芯片设计的一款FPGA开发板,全面实现国产
    发表于 08-31 14:21

    紫光同创FPGA入门指导:密码锁——紫光盘古系列22K开发套件实验教程(六)

    平台)简介 盘古22K开发板是基于紫光同创Logos系列PGL22G芯片设计的一款FPGA开发板,全面实现国产化方案,板载资源丰富,高容量、高带宽,外围接口丰富,不仅适用于高校教学,还
    发表于 08-28 15:53

    紫光同创FPGA入门指导:序列检测器——紫光盘古系列22K开发套件实验教程(五)

    平台)简介 盘古22K开发板是基于紫光同创Logos系列PGL22G芯片设计的一款FPGA开发板,全面实现国产化方案,板载资源丰富,高容量、高带宽,外围接口丰富,不仅适用于高校教学,还
    发表于 08-25 14:13

    【免费试用】紫光同创PGL50H开发平台,高性能国产FPGA,盘古50K开发板试用活动火热征集中!

    的可编程逻辑器件平台和系统解决方案。 为方便更多用户熟练掌握国产FPGA开发平台,在导入国产化器件时可以实现快速转化,紫光同创联合生态合作伙
    发表于 08-21 16:16

    紫光同创国产FPGA教程】【PGC1/2KG第三章】键控彩灯实验例程

    适用于板卡型号: 紫光同创PGC1/2KG开发平台(盘古1K/2K) 一:盘古1K/2K开发板(紫光同创PGC2KG开发平台)简介 盘古1/2K 开发板是一套基于
    发表于 08-09 17:15

    紫光同创国产FPGA教程】【PGC1/2KG第二章】LED 流水灯实验例程

    适用于板卡型号: 紫光同创PGC1/2KG开发平台(盘古1K/2K) 一:盘古1K/2K开发板(紫光同创PGC2KG开发平台)简介 盘古1/2K 开发板是一套基于
    发表于 08-09 11:58

    紫光同创国产FPGA教程】【PGC1/2KG第一章】控制LED灯实验例程

    适用于板卡型号: 紫光同创PGC1/2KG开发平台(盘古1K/2K) 一:盘古1K/2K开发板(紫光同创PGC2KG开发平台)简介 盘古1/2K 开发板是一套基于
    发表于 08-08 11:49