|
|
1
5
你就不能这样写吗:
|
|
|
2
2
在你的情况下,比如:
注: 根据您正在尝试的操作,您可能希望在一侧或另一侧使用预定义的大小,并使用转换函数将X和Y值填充/剪裁为自然长度(即:可能将X和Y值调整为16或32位值)。unsigned type和resize函数对此很有效:
|
|
|
3
2
虽然目前还没有正式的自动方式将记录转换成矢量(反之亦然),但这是一个非常常见的要求。你有两个选择:
单调和重复的任务会激励你编写脚本来生成代码,这表明了语言本身的缺陷。你可以用一个 积极作用 在IEEE工作组和 影响 这个 next version of the VHDL standard . |
|
|
4
2
摘自讨论 here 对于大型记录,一种合理的方法是提前定义范围,如下所示:
那么转换函数如下所示:
|
|
|
5
1
我准备了一个脚本,它自动生成
此脚本的源发布为
|
|
|
6
0
我又做了一次记录序列化的尝试。我相信我的方法更稳健一些。您仍然需要为每种记录类型创建函数,但不需要提及范围。 假设您需要使用我的包序列化类型:
然后您可以在如下代码中使用它:
我将我的代码和更复杂类型(嵌套记录等)的示例发布在: https://github.com/gitmodimo/vhdl-serialize |