我对 vhdl 中的当前时间有一些疑问

i have some problem about current time in vhdl

我是最近第一个入手vhdl的同学。目前正在开发FPGA板。 我希望每当我按下 RESET 按钮时,我的七段表就会有当前时间。有办法解决吗?

我整天都在搜索计算器。但我找不到解决方案..

  -- Time information
  constant HOUR_INT   : integer                       := 00;  --  I think we should put the current time in here.
  constant HOUR_HEX   : std_logic_vector(7 downto 0)  := X"00";
  constant MINUTE_INT : integer                       := 00;
  constant MINUTE_HEX : std_logic_vector(7 downto 0)  := X"00";
if reset = '0' then
      hour <= conv_std_logic_vector(datetime.hour_int, 5)

这个代码比例,为什么我要在hout_int旁边输入5?

我认为无法获取系统的当前时间(考虑到本论坛其他人的尝试/问题)。所以也不可能使用 reset 来获取当前时间。

看看也许有用here

有人已经用 RTC 以不同的方式尝试过(成功): - here non-manually 设置时钟 - here 手动设置时钟

在 HDL 中,您只能使用来自外部参考的一些计数器 运行 来跟踪经过的时间:具有已知频率的时钟信号。

您始终必须通过初始化1 您的计数器寄存器来设置电流 date/time。设置 time/date 通常是通过 CPU 界面完成的。这意味着您需要一个 CPU 从某个地方获取时间(一个 real-time 时钟或与外界的连接),然后以某种格式将时间写入您的寄存器。

1即使您的 FPGA 有备用电池:它总是必须至少在第一次设置。