EFSM Building (Related Work) » History » Version 6
Sergey Smolov, 03/27/2017 07:30 PM
1 | 1 | Sergey Smolov | h1. EFSM Building (Related Work) |
---|---|---|---|
2 | |||
3 | 2 | Sergey Smolov | Алгоритмы извлечения EFSM-моделей из исходного кода HDL-описаний. |
4 | |||
5 | 1 | Sergey Smolov | h2. Cheng, Krishnakumar 1996 |
6 | 2 | Sergey Smolov | |
7 | 3 | Sergey Smolov | На вход алгоритму подается описание на языках VHDL или C (BESTMAP-C - см. Jou, J-Y., Rothweiler, S., Ernst, R., SUTARWALA, S., and Prabhu, A. 1989. BESTMAP: Behavioral Synthesis from C. In International Workshop on Logic Synthesis (Research Triangle Park, NC, May).) |
8 | 4 | Sergey Smolov | |
9 | *Шаг 1* |
||
10 | 5 | Sergey Smolov | По синхронной части кода (synchronous section) строится _дерево операторов_ (statement tree). Листовыми вершинами дерева являются базовые блоки (последовательности присваиваний). Ветви дерева снабжены атрибутами. Атрибуты - это выражения булева типа, соответствующие ветвям условных операторов в исходном коде. Не указано, каким образом выбираются переменные состояния (state variables), однако на *Шаге 3* они считаются уже определенными. |
11 | |||
12 | *Шаг 2* |
||
13 | 6 | Sergey Smolov | Строится список всех возможных комбинаций условий на входные сигналы. Условия извлекаются из дерева операторов. Извлеченные комбинации проходят процедуру _ортогонализации_, такую, что каждая исходная комбинация оказывается представимой в виде суперпозиции нескольких ортогональных условий. В результате строится множество ортогонализованных условий I. |
14 | |||
15 | *Шаг 3* |
||
16 | Предыдущий шаг повторяется для всех условий, содержащих переменные состояния. В результате строится множество ортогонализованных условий C. |