随机数数组我想的输入的所有可能的组合进行测试,以一个Verilog的模块。我已经能够通过构建一个嵌套for循环的数组来生成这些输入。但是我想按随机顺序浏览数组。如何做到这一点,或者是否有办法生成一个已经随机排列的所有可能输入数组?以Verilog
Q
以Verilog
0
A
回答
4
如果你想重新排列的测试用例列表像洗牌的扑克牌,还有叫Fisher–Yates shuffle这样做的算法。或者如果你使用SystemVerilog,工具指出数组有一个内置的shuffle
方法。
+2
当然,我们都假设神经麻醉师需要什么。无论如何,一个警告在该溶液是,如果有大量的有效刺激(在ALU添加例如两个32位整数),则该方法洗牌将需要在测试开始时以消耗所有该内存。如果使用注释散列函数(http://en.wikipedia.org/wiki/Perfect_hash_function),那么您将不会有零时间内存分配问题。 – 2011-05-18 16:52:39
相关问题
- 1. 2D阵列以Verilog
- 2. 以verilog连接输入
- 3. 系统verilog/verilog ---事件
- 4. 在Verilog中可以合成$ readmem吗?
- 5. 分配ASCII字符线以Verilog
- 6. 紧缩和非紧缩阵列以Verilog
- 7. 以verilog代码引用的调用
- 8. Verilog Uknowns
- 9. Verilog管道
- 10. Ring Oscillator Verilog code
- 11. verilog flop RTL simulation
- 12. 系统verilog/oop
- 13. 使用在VERILOG
- 14. 采用了Verilog
- 15. Verilog model sim
- 16. 通过用Verilog
- 17. Verilog工具?
- 18. Verilog Debouncing Module
- 19. 在Verilog代码
- 20. verilog红外输出
- 21. Verilog自动任务
- 22. 学习资源Verilog
- 23. Verilog注册分配?
- 24. Verilog:解析错误
- 25. 闪烁的LED Verilog
- 26. Verilog阵列演练
- 27. verilog模拟错误
- 28. Verilog执行命令
- 29. Verilog逻辑错误
- 30. verilog到FSM转换
我不知道我的理解。你说你“不想按随机顺序遍历数组” - 但嵌套for循环不会是随机的吗?另外,你能否通过“生成一个已经按照随机顺序的所有可能的输入数组”来解释你的意思? – Marty 2011-05-17 12:36:55
如果你的目标是通过对输入的所有有效组合进行迭代,没有做的1,2,3,4,5相当于等角,也没有重复投入? – 2011-05-17 16:28:27
也许你正在寻找一个[洗牌算法(http://en.wikipedia.org/wiki/Fisher%2DYates_shuffle)? – Andy 2011-05-17 18:06:54