有没有办法让ip地址字在wave窗口中以十进制点格式显示?
问问题
396 次
1 回答
1
据我所知,不是……但是您可以为 4 个部分创建虚拟信号(“虚拟信号……”)。
将它们显示为十进制('-radix unsigned')。
并使用这 4 个虚拟信号创建一个组 ('add wave ... -group ...) 。
我发现在 GUI 中创建虚拟信号和组更容易,然后在 DO 文件中自己输入('Tools' -> 'Virtual Builder')。
一个测试 VHDL 文件:
library ieee;
use ieee.std_logic_1164.all;
entity test is
end entity test;
architecture rtl of test is
signal ip : std_logic_vector(31 downto 0) := x"AC_10_41_3D"; -- 172.16.65.61
begin -- architecture rtl
end architecture rtl;
wave.do 文件的重要部分:
quietly virtual signal -install /test { /test/ip(31 downto 24)} ip_3
quietly virtual signal -install /test { /test/ip(23 downto 16)} ip_2
quietly virtual signal -install /test { /test/ip(15 downto 8)} ip_1
quietly virtual signal -install /test { /test/ip(7 downto 0)} ip_0
add wave -noupdate /test/ip; # without formatting
# group the 4 parts of the IP address and display them as decimal
add wave -noupdate -expand -group {IP_formatted} -radix unsigned /test/ip_3
add wave -noupdate -expand -group {IP_formatted} -radix unsigned /test/ip_2
add wave -noupdate -expand -group {IP_formatted} -radix unsigned /test/ip_1
add wave -noupdate -expand -group {IP_formatted} -radix unsigned /test/ip_0
于 2013-02-13T11:31:29.743 回答