簡體   English   中英

std_logic到整數的轉換

[英]std_logic to integer conversion

我想將sys-clock(std_logic)轉換為整數值(sys_clk)。 因此,我正在使用以下庫:

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all;

-- code example 
sys_clk         : INTEGER;
clk_clk         : in  std_logic;

如何將clk_clk轉換為sys_clk?

謝謝

假設從std_logic轉換為'0''1'integer01 ,您可以使並發語句如下:

sys_clk <= 1 when (clk_clk = '1') else 0;

要么

sys_clk <= to_integer(unsigned'('0' & clk_clk));

此外,聲明中還有一些語法錯誤。

我不確定您的想法,但是將std_logic轉換為integer聽起來不是一個好主意。 雖然可以這樣做,但我建議您要這樣做。

您無需將sys_clk轉換為整數即可添加或測試其值(我無法想象這樣做有什么用)。

您也可以自己編寫函數:

function to_integer( s : std_logic ) return natural is
begin
      if s = '1' then
      return 1;
   else
      return 0;
   end if;
end function;

然后,您將像使用to_integer()作為std_logic_vectors一樣使用它

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM