爲了生成受約束的隨機通信量,我使用了一系列的集合,但是我希望能夠調用一個Specman宏來計算集合的補碼,語法如下:Specman宏用int_range_list對象進行減法運算
COMPLEMENT begin
domain=[0..10,24..30],
complementing_set=[2..3,27..30]
end
並將它產生:
[0..1,4..10,24..26]
每當需要一組的補我使用完全填充的列表(例如{0; 1; 2; 3 ....})然後刪除元素,而不是使用Specman的內置int_range_list對象。而且我在運行時而不是編譯時也做了很多這些集計算。
這是做工會爲int的名單一個真正偉大的方式!我的目標是*不*使用list_of_int's,因爲它消耗太多內存。我們的設計中有16個以上的節點,節點的類型也各不相同。我想使用int_range_list,因爲當測試val是否在set中時,Specman更快。 – 2008-09-29 19:04:53