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

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

3天内不再提示

InterfaceDesinger 使用案例

XL FPGA技术交流 来源:XL FPGA技术交流 作者:XL FPGA技术交流 2024-05-20 16:16 次阅读

时钟输出

易灵思所有的GPIO都可以用作时钟输出。这里我们提供两种时钟输出方式。

方法一:把时钟设置为clkout模式。下图选自钛金系列ds上的IO框图 。从图片上可以看到OUTCLK的路径。

f4658bc8-0b41-11ef-b759-92fbcf53809c.png

在添加 GPIO时,设置Mode为clkout,并在output Clock中输入时钟名。

f47bd572-0b41-11ef-b759-92fbcf53809c.png

f4908148-0b41-11ef-b759-92fbcf53809c.png

这里需要 注意的是,时钟名不能从core直接输出,而只能使用interface中使用的时钟,如PLL输出的时钟或者GCLK输入的时钟。比如我们在代码中定义了一个IO,如下:

module clk_test(...
output clk_100m,
...);

如果直接把代码中定义的clk_100m直接配置给interface的GPIO,这时软件会报错。

方法二:

通过DDIO的方式设置时钟输出。IO模式设置为output,并打开Register Option及Double Data I/O Option,并指定时钟。

f49751ee-0b41-11ef-b759-92fbcf53809c.png

f49aedd6-0b41-11ef-b759-92fbcf53809c.png

f4aba4be-0b41-11ef-b759-92fbcf53809c.png

程序内部分别对DDIO的高低位分部赋值为1或者0.

assign clk_out_inst_HI = 1'b1;assign clk_out_inst_LO=1'b0;

对于两种方式的使用,Trion有很大一部分的GPIO不支持DDIO,只能使用第一种方式,钛金所有的GPIO都支持DDIO;另外在源同步时钟数据输出时,DDIO的方式可以保证数据和时钟的延时一致,所以易灵思推荐使用DDIO的方式。

Efinity处理三态端口问题

我们在处理三态门时一般都是用下面的语句;

inout bidr_pad;wirein;wire out;wireo_oe;
assign bidr_pad= o_en ? out :z; assignin=bidr_pad;

其实它对应的硬件结构就是下面的框图。它涉及到3个信号:in,out,o_en。

当o_en = 1时,out可以通过out buf输出到pad上,同时会反馈到in;

当o_en = 0时,out buf就是高阻态。in的信号就是通过外部pad通过in buf输入进来。

f4bfd858-0b41-11ef-b759-92fbcf53809c.png

最初使用Efinity,因为架构差异,很多人被inout的使用难住了。这里来说明一下。在易灵思的产品架构中,原有的rtl代码都是针对fabric的,也就逻辑部分。而IO被认为是外设。如下图I/O Buffer部分相对于fabric是外设,它是在Efinity的interface Designer中设置的。这样在rtl只需要定义:

inputin;outputout;output o_oe;

f4c31482-0b41-11ef-b759-92fbcf53809c.png

有了上面的认知,我们就容易理解在efinity中怎样添加三态。

添加三态门的过程如下:

我们在interface中添加一个gpio,命名为sda,把Mode,选择为inout,

f4d477d6-0b41-11ef-b759-92fbcf53809c.png

点击show/Hide GPIO Resource Assigner,打开IO分配界面分配IO.

f4f0814c-0b41-11ef-b759-92fbcf53809c.png

点击保存和Generate Efintiy Constraint Files.

f4fa5e06-0b41-11ef-b759-92fbcf53809c.png

打开工程面板下面的Result下的xxx_template.v,可以看到里面添加了

f4fda1c4-0b41-11ef-b759-92fbcf53809c.png

Inputsda_IN,output sda_OE,output sda_OUT

三个信号,把这三个信号复制到工程文件的顶层中去,这样就定义好了一个inout,可以直接全用了。

另外如果要添加IO寄存可以根据实际需要去选择,同时要注意为寄存器选择准确的时钟。


这样就不用再写assign sda = oe ? sda_out :z; 这样的语句,因为oe就是sda_OE, sda_out对应的就是接口生成的sda_OUT。

在Efinity的.v文件中不支持inout 双向口的定义,另外Efinity也不支持‘z’这种定义。


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

    关注

    16

    文章

    1213

    浏览量

    52195
  • 易灵思
    +关注

    关注

    5

    文章

    47

    浏览量

    4891
收藏 人收藏

    评论

    相关推荐

    CES 2025 :AI影响下的存储技术产品走向

    电子发烧友网报道(文/黄晶晶)2025年1月在CES展上,存储大厂纷纷秀肌肉,而他们无一例外地展示了其存储之于AI应用的实力。SK海力士、三星、美光等厂商带来了最新的技术和产品,他们引领着AI存储新的方向。   SK 海力士   SK海力士在CES展上展示了公司在推动人工智能时代进步方面所推出的变革性存储器产品。包括SK海力士的HBM、服务器DRAM、eSSD、CXL及PIM产品。   作为领先的HBM供应商,SK海力士公开了16层HBM3E样品。这是全球容量最大的HBM产品,48GB 1
    的头像 发表于 01-13 09:11 16次阅读
    CES 2025 :AI影响下的存储技术产品走向

    为储能系统穿上“防护服”的EMC元件

    电子发烧友网报道(文/黄山明)EMC(电磁兼容性)元件一般是指那些用来确保设备在预期的电磁环境中能够正常工作,并且不会对其它设备造成无法承受的电磁干扰的所有组件或装置。这些元件最重要的作用,便是让各设备在同一电磁环境中,都能够正确运行而不互相干扰。   以储能设备为例,由于本身处在电磁环境下工作,因此需要采用屏蔽材料来保护敏感的电路免受外部电磁场的影响,或是在电源线和信号线上添加滤波器来减少传导干扰。   同时
    的头像 发表于 01-13 09:13 10次阅读

    光敏电阻的常见型号及对比

    光敏电阻是一种利用光电效应将光信号转换为电信号的传感器,广泛应用于自动控制系统、光控开关、光通信等领域。以下是一些常见的光敏电阻型号及其对比: 1. 型号:GL5516 特点 :小型化,适用于空间受限的应用。 应用领域 :小型电子设备,如手机、相机等。 对比 :相比其他型号,GL5516体积小,但可能在光敏度上不如大型型号。 2. 型号:BPW34 特点 :高灵敏度,适用于需要快速响应的应用。 应用领域 :自动门、光控开关等。 对比 :BPW34的灵敏度
    的头像 发表于 01-13 09:12 10次阅读

    光敏电阻与光电传感器的区别

    在现代电子技术中,光传感器是一类非常重要的传感器,它们能够将光信号转换为电信号,从而实现对光强度的检测和控制。光敏电阻和光电传感器是两种常见的光传感器,它们在工业自动化、环境监测、医疗设备等领域有着广泛的应用。 一、工作原理 1. 光敏电阻 光敏电阻是一种电阻值随光强度变化的电阻元件。它通常由半导体材料制成,如硫化镉(CdS)或硒化镉(CdSe)。在无光照时,光敏电阻的电阻值较高;当光照强度增加时,电阻值会降低。这种
    的头像 发表于 01-13 09:11 11次阅读

    玻色量子上线550量子比特云服务

    2025年1月,由北京玻色量子科技有限公司(简称“玻色量子”)自研的相干光量子计算云平台正式上线,可支持550计算量子比特云服务(以下简称“玻色量子550量子比特云服务”)。
    的头像 发表于 01-13 09:11 7次阅读

    纳米晶体技术介绍

    本文旨在介绍人类祖先曾经使用过纳米晶体的应用领域。   纳米技术/材料在现代社会中的应用与日俱增。纳米晶体,这一类独特的纳米材料,预计将在液晶显示器、发光二极管、激光器等新一代设备中发挥关键作用。然而,我们不能忘记的是,这些设备所代表的纳米技术,实际上根植于几千年来发展起来的经验知识和工艺。 纳米技术是如何诞生的? 纳米技术是指使用具有纳米尺寸或其特性依赖于纳米级结构组织的材料,它的诞生通常与两个事件有关:
    的头像 发表于 01-13 09:10 9次阅读
    纳米晶体技术介绍

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-初识设备树之Makefile修改

    在arch/arm/boot/dts/目录下会有很多.dts文件被编译成.dtb文件,通过配置Makefile文件可以对这些dts文件进行选择性编译,打开arch/arm/boot/dts/Makefile:我们使用的是i.MX6ULL平台,所以,编译器会编译生成CONFIG_SOC_IMX6ULL命令下.dtb文件,这些.dtb都应有其对应的.dts文件。如果我们因为板子硬件改动或硬件外设配置不同而新增加了dts,则需要在这个Makefile的这个位置添加上对应的.dtb文件名参与编译。ELF 1使用的设备树命名为imx6ull-elf1-emmc.dts,是基于NXP官方evk板子的设备树imx6ull-14x14-evk.dts修改而来,修改的内容及方法将会在后面进行详细介绍。
    发表于 01-13 09:09

    703所:某型燃气轮机热障涂层对涡轮动叶冷却效果的影响机制研究

    为了获得涡轮叶片热障涂层隔热效果和温度分度分布规律,以带有内部冷却结构的某型燃机高压涡轮动叶为基础模型,通过气热耦合的方法对有/无热障涂层保护下的高压涡轮动叶的冷却效果进行了数值计算,并通过改变热障涂层的厚度研究了热障涂层对叶片换热的影响规律。研究发现:涂有热障涂层后,叶片温度下降明显,越靠近前缘温度降低幅度越大,压力侧与吸力侧相比温度降幅更大;厚度为0.05~0.2 mm 的热障涂层可使叶片金属表面平均温度降低
    的头像 发表于 01-13 09:07 11次阅读
    703所:某型燃气轮机热障涂层对涡轮动叶冷却效果的影响机制研究

    飞凌嵌入式ElfBoard ELF 1板卡-初识设备树之IOMUX介绍

    IOMUX是指引脚功能复用功能配置,MUX是指multiplex多路复用的意思,由于芯片硬件引脚资源有限,但又想实现尽可能多的功能,于是芯片厂商,就实现了一个引脚可复用为多路功能的设计。不同厂家的SOC芯片有不同的配置方法,下面我们讲i.MX6ULL的引脚功能复用的配置方法。下边以背光引脚为例进行讲解。从原理图中我们可以看出屏幕背光用的是核心板上的63引脚。接下来我们查看硬件资料中的<>核心板管脚功能分配表中,第一列是连接器的引脚编号;第二列是信号名称;第三列是开发板默认功能;第四列是功能描述;Alt0-Alt5表示该引脚可以复用成的功能,能够看出63引脚可以复用成pwm1,wdog1,spdif,csi.VSYNC,usdhc2.VSELECT,gpio1.IO8。与软件中是如何对应的呢,打开源码中arch/arm/boot/dts/imx6ull-elf1-emmc.dts,其中背光节点backlight节点引用了pwm1标签。接下来搜索pwm1标签,pinctrl-0属性中定义了引脚的复用状态:进一步搜索pinctrl_pwm1标签:其中GPIO1_IO08是引脚的信号名称,PWM1_OUT为此引脚复用成的功能。那MX6UL_PAD_GPIO1_IO08__PWM1_OUT这个宏是在哪里定义的呢?我们打开arch/arm/boot/dts/imx6ull-pinfunc.h,在文件中搜索信号名称GPIO1_IO08:搜索发现此文件中没有没有这个引脚的相关描述。这个文件还引用了imx6ul-pinfunc.h,因为imx6ull与imx6ul有一些通用的配置,所以就把通用的部分都放到了imx6ul-pinfunc.h文件中,然后把差异的部分放到imx6ull-pinfunc.h中来描述。接下来再打开arch/arm/boot/dts/imx6ul-pinfunc.h,搜索信号名称GPIO1_IO08,能搜索到如下宏定义。其中GPIO1_IO08能复用成9种功能,我们使用到的是第一种PWM1_OUT。将其展开为:0x007C 0x0308 0x0000 0x0 0x0 0x110b00x007C | 0x0308| 0x0000|0x0| 0x0|0x110b0----------------------------------------------------------------------------------------------------------------------mux_ctrl_ofs | pad_ctrl_ofs | sel_input_ofs | mux_mode| sel_input |pad_ctrl注意:下述参考手册为《IMX6ULLRM.pdf》找到32章节IOMUX Controller此章节IOMUXC Memory Map/Register Definition中的IOMUXC中有两类描述,一类是IOMXUC_SW_MUX_CTL_PAD,另一类是IOMUXC_SW_PAD_CTL_PAD。其中IOMXUC_SW_MUX_CTL_PAD描述的是复用寄存器;IOMUXC_SW_PAD_CTL_PAD描述的是电气属性寄存器。先查看复用寄存器IOMUXC_SW_MUX_CTL_PAD_GPIO1_IO08。从下图可以看到此引脚复用寄存器的偏移地址就是7C,想把此引脚复用成pwm1,需要选择ALT0,所以mux_ctrl_ofs为0x007C,mux_mode为0x0pad_ctrl_ofs为电气属性寄存器的偏移地址0x0308,并根据pad_ctrl的值(0x110b0)来设置此寄存器。此寄存器主要时配置一些内部上下拉电阻,转换速率,引脚驱动强度等电气属性。我们以一个引脚为例来介绍IOMUX,相信通过这个实例,我们对如何将一个引脚复用成想用的功能有了清晰的理解,接下来我们通过理解ELF 1开发板的接口功能的适配,进一步强化这方面的技能,通过后边内容的加强,您很快就可以自己实现自己的软件接口适配了。
    发表于 01-13 09:05

    偏振分析器

    摘要 线栅偏振器,可以使透射光产生线性偏振状态,是众多应用中常见的一种光学元件。由于它们的结构在亚波长范围内,因此必须对光的传播进行严格的处理。VirtualLab的偏振分析器及其内置的RCWA能够详细分析和优化,不仅是偏振器,还有抗反射结构和其他类型的光栅。它提供了与偏振有关的反射和/或透射衍射阶数的信息,同时还可以分析效率与波长和/或入射角的关系。 任务描述 本文件的主题是使用偏振分析器研究光栅的衍射阶数的偏振状态。 光栅式光学装置中的偏振分析器 编辑偏振分析器 -该分析器计算了所定义结构的每个衍射阶数的两个正交偏振状态的效率之和(无论是透射还是反射)。 -为此,在相应系统的光栅组件中配置的光栅被使用。 -效率之和可以从所有(传播)阶数中计算,也可以从用户定义的阶数范围中计算。 编辑偏振分析器 -入射光束的偏振状态可以根据以下坐标系来定义。 a. 光栅的坐标系 b.光源的坐标系 c.P-S坐标系 d.TE-TM坐标系 偏振方向 a.光栅坐标系 琼斯矢量分别描述了沿光栅组件的X轴和Y轴的电场。 b.光源坐标系 琼斯矢量分别描述了沿光源X轴和Y轴的电场。 非锥形入射的偏振方向 c.p-s坐标系 d.TE-TE坐标系 入射平面由光栅表面的法向量和入射光线的方向向量定义(在非锥形情况下,光栅向量也在这个平面内)。p-极化状态与入射平面平行,而s-极化状态与之垂直。对于TE/TM极化,这也相应有效(TM:平行,TE:垂直)。 锥形入射的偏振方向 c.p-s坐标系 d.TE-TM坐标系 在锥形情况下,光的入射方向不再是由表面法线和光栅矢量定义的平面内。同样,入射光线的偏振状态是根据入射方向和光栅表面的法线矢量形成的入射平面来定义的。 输出数据的规格 除了两个正交偏振方向的效率外,该分析仪还提供其他评价函数,如偏振对比度和平均效率。 -Ex方向的Ix效率:Ex偏振的整体反射/传输效率。 -Ey方向的Iy效率:Ey偏振的整体反射/传输效率。 -偏振对比度:P=Ix/Iy。 -平均效率:A=(Ix+Iy)/2。 内置的参数运行功能 -分析器提供了一个内置的Parameter Run功能,用于分析指定范围内的波长和/或入射角的目标函数。 -此外,一些Advanced Outputs也是可用的,例如,在定义的波长或角度范围内说明所选优点函数的变化的图示。 -通过激活相应的复选框(同样,对于最小、最大和均匀性误差),将产生相应的附加输出。 内置的参数运行功能 入射角定义的注意事项: 如果您在光学设置中创建一个新的偏振分析器,偏振分析器中的角度定义类型将根据该光学设置中光栅组件的方向定义类型来设置,即: -对于球面角,Theta、Phi和Zeta角可以被改变。 -对于方向角,Zeta角可以改变。 -对于笛卡尔角,可以改变Alpha、Beta和Zeta的角度。 -对于欧拉角,可以改变Psi、Theta和Phi的角度。 例子 结果 参数扫描得出的图表(效率与波长): 所选产出的结果 :
    发表于 01-13 08:59

    蓝牙读卡器在人力资源实名制务工登记中的技术方案

    蓝牙读卡器在人力资源实名制务工登记中的技术方案 一、方案背景 在人力资源管理中,为确保用工信息真实可靠,落实实名制务工登记十分关键。本方案旨在通过手机 APP 或手机小程序调用我司蓝牙读卡器,实现人力资源用工实名制的有效落地。 二、系统架构 前端应用:手机 APP 或手机小程序作为用户交互界面,负责发起读卡请求、展示读取结果以及与用户沟通操作流程。 蓝牙通信层:基于蓝牙 BLE 技术,实现前端应用与蓝牙读卡器(CICR - 601)的稳定连接和数据传输。 读卡器:即我司的 CICR - 601 蓝牙读卡器,负责读取身份证等证件芯片信息,并将数据通过蓝牙传输给前端应用。 后端服务器:接收前端应用上传的实名登记信息,进行存储、校验、分析等处理,同时为前端应用提供数据支持和业务逻辑处理。 三、业务流程 用户操作:务工人员打开手机 APP 或手机小程序,进入实名制登记页面,点击读卡按钮。 蓝牙连接:前端应用自动搜索附近的蓝牙读卡器,找到设备后发起连接请求。若连接成功,读卡器绿灯常亮提示已连接;若连接失败,前端应用提示用户检查设备状态。 卡片读取:务工人员将身份证等有效证件靠近读卡器,当读卡器寻到卡片,蓝灯常亮,数据交换时绿灯会快闪。读卡器读取证件芯片信息,并通过蓝牙传输给前端应用。 数据展示与提交:前端应用接收到数据后,展示读取到的实名信息,供务工人员核对。确认无误后,点击提交按钮,将信息上传至后端服务器。 数据处理:后端服务器接收数据后,进行格式校验、唯一性检查等处理。若数据合规,存储至数据库;若不合规,返回错误信息给前端应用提示用户。 四、技术实现要点 蓝牙连接管理:在前端应用中集成蓝牙连接相关代码,使用标准蓝牙 API 实现设备搜索、连接、数据传输与断开等操作,确保连接的稳定性和数据传输的准确性。 读卡功能集成:根据读卡器的技术文档,在前端应用中编写调用读卡器功能的代码,确保能正确接收和解析读取到的证件信息。 数据安全保障:在数据传输过程中,采用加密算法对敏感信息进行加密处理,确保数据在蓝牙传输和网络传输过程中的安全性;后端服务器设置严格的访问权限,保障数据存储安全。 兼容性处理:考虑到不同品牌、型号手机的差异,对前端应用进行充分测试,确保与市场主流手机具有良好的兼容性。 五、系统维护与升级 建立定期巡检机制,检查系统运行状态、服务器性能等;根据业务需求和技术发展,及时对前端应用、后端服务器进行功能升级和优化。
    发表于 01-13 08:55

    VA显示模拟

    建模任务 垂直配向型显示模式中,液晶分子垂直玻璃基板取向排列,无电压时,光线经过下偏光板后形成平行于液晶分子短轴的直线偏光,偏光方向不能转动,因此被上偏光板吸收,无法射出;施加电压后,液晶分子沿着电场方向偏转,光线经过下偏光板和液晶层呈圆偏光,可以透过上偏光板射出。具有最佳的黑色状态,故有最佳的正视对比度,天生具备高对比。下面展示了使用Techwiz LCD 1D对VA型的模拟。 条件设置: 预倾角:89.5° 方位角:45° 液晶参数:Δε=-4.2Δn=0.08 光源:λ=380-780nm 偏光片:上0°,下 90° 器件结构(VA型) 结果 不同视角下对比度 色域图 RGB子像素的真实颜色轮廓
    发表于 01-13 08:52

    政策大力推动!2025年国内400G/800G全光连接爆发

    电子发烧友网报道(文/吴子鹏)近日,国家发展改革委、国家数据局、工业和信息化部三部门联合印发《国家数据基础设施建设指引》。其中提到,网络设施、算力设施适应数据价值释放需要,向数据高速传输、算力高效供给方向升级发展。加快推动通用算力、智能算力、超级算力等多元异构算力的绿色发展、有机协同。促进各类新增算力向国家枢纽节点集聚,强化枢纽节点国家算力高地定位。推动国家枢纽节点和需求地之间400G/800G 高带宽全光连接,
    的头像 发表于 01-13 01:07 126次阅读
    政策大力推动!2025年国内400G/800G全光连接爆发

    InterfaceDesinger 使用案例-v3

      1、 DDIO用法 2、 时钟输出 3、 Efinity处理三态端口问题 4、 PLL的添加  5、HSIO的解串器用法   1、DDIO用法 对于输入输出IO很多时候会用到DDIO的用法。对于DDIO,就是时钟的双沿采集或者发送数据,所以必须要用到寄存器。它的设置也比较简单,在intefaceDesigner中添加GPIO,并把register Option设置为register,另外要设置Double Data IO Option模式,分别为normal和resync。   下图是 易灵思的GPIO的结构。   对应上图我们以ODDIO为例,分别标出了reg1,reg2和reg3三个寄存 器。当
    的头像 发表于 07-17 16:24 1144次阅读
    <b class='flag-5'>InterfaceDesinger</b> 使用案例-v3

    InterfaceDesinger 使用案例-v1 -DDIO用法

      DDIO用法 对于输入输出IO很多时候会用到DDIO的用法。对于DDIO,就是时钟的双沿采集或者发送数据,所以必须要用到寄存器。它的设置也比较简单,在intefaceDesigner中添加GPIO,并把register Option设置为register,另外要设置Double Data IO Option模式,分别为normal和resync。   下图是 易灵思的GPIO的结构。   对应上图我们以ODDIO为例,分别标出了reg1,reg2和reg3三个寄存 器。当OUT0为上升沿的触发信号,即HI,OUT1为下降沿的触发信号,即LO。当DDIO模式设置为Normal mode时,
    的头像 发表于 05-20 16:30 928次阅读
    <b class='flag-5'>InterfaceDesinger</b> 使用案例-v1 -DDIO用法