Предположим, у нас есть переменная «a», которая в конце должна представлять значение из 4 бит, например. а = "0011". Отдельные биты в эту переменную считываются из экземпляра VHDL.
Предположим, что первый бит вывода VHDL равен 1, например. result_from_VHDL_instance = 1. Затем я сохраняю этот старший бит в своей переменной a:
set a [BUS2INT result_from_VHDL_instance]; # a = 1
Теперь, как мне соединить с этой переменной оставшиеся биты. Предположим, что второй бит вывода VHDL снова равен 1, например. result_from_VHDL_instance = 1. Теперь я хочу объединить этот бит с битом, который уже хранится, например, в а = 11.
И так продолжается, для следующего бита, например. result_from_VHDL_instance = 0, значение a должно быть 110 и т. д.
РЕДАКТИРОВАТЬ:
Спасибо за ваши ответы до сих пор, но я думаю, что у меня есть более основная проблема. Первый вопрос заключается в том, есть ли в TCL такой тип данных для бинарного представления, например. что a = 1011. Если нет, то я должен либо представить переменную в виде строки, либо целого числа, какие-либо предложения для этого?