找回密码
 注册
关于网站域名变更的通知
查看: 902|回复: 17
打印 上一主题 下一主题

FPGA学习总结[经典推荐]

  [复制链接]
  • TA的每日心情
    开心
    2019-11-20 15:00
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-10-22 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    FPGA学习总结[经典推荐]
    & a( t; K9 p) x4 O1 i
    1. 关于端口
      g) e9 z/ X% G4 ~3 P, RVHDL 共定义了 5 种类型的端口,分别是 In, Out,Inout, Buffer 及 Linkage,实际设计时只会用 到前四种。In 和 Out 端口的使用相对简单。这里,我们主要讲述关于 buffer 和 inout 使用时的注意 事项。
    2 L- ~1 D5 o: z* o4 K# S4 iinout 和 buffer 区别
    5 ~" q. q% u( v, z8 UINOUT 为输入输出双向端口,即从端口内部看,可以对端口进行赋值,即输出数据。也可以从 此端口读入数据,即输入;
    # C9 I4 O0 S! W7 ]+ sBUFFER 为缓冲端口,功能与 INOUT 类似,区别在于当需要读入数据时,只允许内部回读内 部产生的输出信号,即反馈。举个例子,设计一个计数器的时候可以将输出的计数信号定义为 BUFFER,这样回读输出信号可以做下一计数值的初始值。 8 G" ^. b, v; l" `  d2 R
    buffer 顾名思义就是缓存,它是作为输出使用的,因为在模块内,是不可以将输出赋值给其他 信号的,例如定义 b: out std_logic;我们现在要将 b 赋值给信号 a,就会出错,但是如果 b 的类型为 buffer 就可以执行操作;
    5 E* B6 X  d5 w) Cinout是双向端口,即可以作为输入也可以作为输出,跟buffer的作用完全不同,要注意的是inout 类型的数据在不作为输入使用时必须被置为高阻“Z”状态,否则它作为输出的功能将不能正确执行。 " g6 I; R! ]9 Q3 I- y
    与 Out 端口比,Buffer 端口具有回读功能,也即内部反馈,但在设计时好不要使用 buffer, 因为 buffer 类型的端口不能连接到其他类型的端口上,无法把包含该类型端口的设计作为子模块元 件例化,不利于大型设计和程序的可读性。若设计时需要实现某个输出的回读功能,可以通过增加 中间信号作为缓冲,由该信号完成回读功能。 1 t4 m' G; Q0 ]* x* f! w- d
    双向端口 Inout 是四种端口类型中为特殊的一种,难以学习和掌握,为此专门提供一个简 单程序进行阐述,部分程序如下: # R! d$ v3 c2 J6 g7 A
    ... … ① DataB<=Din when CE=’1’ and Rd=’0’ else ② (others=>’Z’); ③ Dout<=DataB when CE=’1’ and Rd=’1’ else ④ ( others=>’1’ ); … … 程序中 DataB 为双向端口,编程时应注意的是,当 DataB 作为输出且空闲时,必须将其设为高 阻态挂起,即有类似第②行的语句,否则实现后会造成端口死锁。而当 DataB 作为有效输入时, DataB 输出必须处于高阻态,对于该例子中即,当 CE=’1’ and Rd=’1’时,输出 DataB 应处于高阻 态。 1 E0 w2 P# Q2 ~/ o

    3 S( Q/ y0 k' O8 n0 i/ P
    游客,如果您要查看本帖隐藏内容请回复
    4 c7 e& [0 ?! e; V
  • TA的每日心情
    开心
    2025-7-25 15:22
  • 签到天数: 1136 天

    [LV.10]以坛为家III

    推荐
    发表于 2022-4-20 15:45 | 只看该作者
    不错不错,写的很是专业和深度,值得好好琢磨一下

    该用户从未签到

    推荐
    发表于 2021-3-28 19:18 | 只看该作者
    这个威望怎么看啊,一直提醒我威望不够

    该用户从未签到

    推荐
    发表于 2021-3-20 19:26 | 只看该作者
    11111111111111111111111$ A% H6 y1 z1 I& t% u+ I

    该用户从未签到

    2#
    发表于 2019-10-23 19:21 | 只看该作者
    谢谢分享,很有用的东东。

    该用户从未签到

    3#
    发表于 2019-10-25 16:54 | 只看该作者
    不错的东西!
    : x3 e- ~1 w6 I, d. p. t

    该用户从未签到

    4#
    发表于 2019-10-28 15:59 | 只看该作者
    感谢楼主分享
    $ \' ]+ U5 F5 ~5 A5 r9 ?  Q. F

    该用户从未签到

    5#
    发表于 2021-3-18 10:06 | 只看该作者
    感谢分享

    “来自电巢APP”

    该用户从未签到

    6#
    发表于 2021-3-18 14:56 | 只看该作者
    谢谢分享,学习了!
  • TA的每日心情
    开心
    2021-3-22 15:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
    发表于 2021-3-19 16:29 | 只看该作者
    感谢楼主分享

    该用户从未签到

    9#
    发表于 2021-3-28 18:22 | 只看该作者
    感谢分享

    “来自电巢APP”

    该用户从未签到

    10#
    发表于 2021-3-28 18:56 | 只看该作者
    谢谢啊,雪中送炭啊

    该用户从未签到

    12#
    发表于 2021-12-7 22:02 | 只看该作者
    学习学习

    “来自电巢APP”

    该用户从未签到

    13#
    发表于 2022-3-20 21:42 | 只看该作者

    该用户从未签到

    14#
    发表于 2022-4-19 20:03 | 只看该作者
    学习一下

    “来自电巢APP”

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-27 10:38 , Processed in 0.140625 second(s), 28 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表