Нужен автокод - иностранцам вежливо настраивать язык кириллический

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Нужен автокод - иностранцам вежливо настраивать язык кириллический » TLM, RTL » Моделирование на уровне транзакций


Моделирование на уровне транзакций

Сообщений 1 страница 4 из 4

1

В настоящее время известны два типа моделей, основанных на транзакциях,
отличающихся уровнем детализации, семантикой выполнения и назначением:
архитектурная модель (спецификация) и
микроархитектурная модель (имплементация).

https://en.wikipedia.org/wiki/Transacti … l_modeling
«TLM language (TLML) is a hardware description language»

TLM — это методология моделирования, которая позволяет описывать взаимодействие между компонентами системы на более высоком уровне абстракции, чем RTL. TLM фокусируется на транзакциях, а не на детальных временных характеристиках сигналов.

Ключевые особенности:

- Упрощение взаимодействия: TLM упрощает описание взаимодействия между компонентами, такими как процессоры, память и периферийные устройства, что облегчает проектирование сложных систем.

-Ускорение симуляции: Модели TLM обычно работают быстрее, чем RTL-модели, что позволяет проводить более быстрые симуляции и тестирование.
«Моделирование на высоком уровне абстракции выполняется до 1000 раз быстрее, чем на RTL уровне.»

-Высокий уровень абстракции: TLM позволяет проектировщикам сосредоточиться на функциональности и взаимодействии компонентов, не углубляясь в детали реализации.

- Стандарты: TLM имеет стандарты, такие как TLM 1.0 и TLM 2.0, которые определяют интерфейсы и методы для моделирования транзакций.

Transaction-level models are used for high-level synthesis of register-transfer level (RTL) models for a lower-level modelling and implementation of system components.

https://studfile.net/preview/7429380/page:3/
Модели TLM описывают аппаратные модули на высоких уровнях абстракции, что позволяет уменьшить время моделирования и упростить отладку проекта [21, 29, 30]

«Транзакция – совокупность действий, которые выполняются в системе в ограниченный период времени.»
«Все операции, изменения состояний, передача данных и вычисления, которые выполняются в определенном модуле системы или между двумя модулями, являются транзакциями.»
«Модель уровня транзакций описывает компонент как набор одновременно взаимодействующих процессов, которые определяют и представляют его поведение.»
«Транзакция может быть описана как конечный автомат с помеченными состояниями “start” и “end”. Для каждой завершенной транзакции ее конечный автомат начинает выполняться с состояния “start” и функционирует до тех пор, пока не перейдет в состояние “end”. В процессе выполнения транзакция может модифицировать разделяемые переменные состояний, которые используются для хранения изменяемых транзакцией данных, а также для передачи информации между транзакциями.»

«создается модель уровня транзакций, в которой не учитывается параметр времени и используется универсальная шина (без детализации); валидация архитектуры и переход на следующий уровень детализации для описания архитектуры шины и добавления отдельных временных значений. Для дальнейшего продвижения по уровням абстракции необходимо расширить модель до синхронизации по времени, оценить качество проекта в целях обеспечения перехода к синтезу на уровне RTL.»

«На уровне спецификации вычислительнй модуль рассматривается как одно функциональное приложение. Например, каждая инструкция архитектуры системы команд (instruction set architecture, ISA) процессора включает в себя вычислительный модуль и может рассматриваться как функция, воздействующая на состояние архитектуры [16].»

Отредактировано Лис (2025-05-30 17:42:22)

0

2

Зачем это нужно?

Для того, чтобы описать ассемблер, на что-то нужно опираться. То есть иметь описание архитектуры.
А как иметь описание архитектуры? Нужно придумать язык, и на этом языке описать (существующую) архитектуру.

Если нет ассемблера, то как описывать семантику придумываемого языка для описания архитектуры?
Ну, можно попробовать что-нибудь математическое за уши притянуть (т.е. опираться на операции, выполняемые человеком вручную).

Отредактировано Лис (2025-05-30 17:47:19)

0

3

https://masters.donntu.ru/2007/fvti/sme … /index.htm

«Есть три ключевых понятия, которые нужно понять для понимания всей технологии TLM.
1) Интерфейсы
2) Блокируемые и неблокируемые
3) Двунаправленные и однонаправленные»

«На основе этого простого транспортного механизма, мы можем строить модели программного обеспечения и аппаратных средств, маршрутизаторов и арбитров, шин с различным типом каналов и пакеты основных протоколов. Мы можем моделировать на различных уровнях абстракции и с помощью каналов соединять их.»

«Пользователи могут проектировать собственные каналы передачи данных ..., или они могут добавлять их непосредственно в объекты»

«OSCI TLM стандарт строго придерживается OSCI терминологии "блокируемые" и "неблокируемые".
К примеру, если интерфейс TLM помечен как "неблокируемый", то его методы никогда не смогут вызвать wait().»

«Некоторые обычные транзакции явно двунаправлены, например считывание данных с шины.»

«Другие транзакции явно однонаправлены.
В случае более сложного протокола всегда возможно разделить передачу данных на двунаправленную или однонаправленную.»

«Двунаправленные блокируемые интерфейсы используется для моделирования транзакций, когда соединены два объекта
непосредственно друг с другом без использования других каналов связи.
Данный подход является верным с точки зрения разработчиков программного обеспечения,
когда, например, на вход передается адрес данных, а на выход отсылаются прочитанные данные.»

«На данном этапе разработки основной трудностью является то, что взаимосвязь между объектами в коде представляется в виде частей, добавляемых коду каждого из объектов, что затрудняет создание шаблонов.»

Отредактировано Лис (2025-05-30 18:20:21)

0

4

https://masters.donntu.ru/2007/fvti/sme … urce04.htm

«modeling these systems at the register-transfer level (RTL) is labor-intensive, and simulation run-times are so long they have become impractical.»

«Designers start with parts at different levels of abstraction, often including algorithmic models written in pure ANSI C++. These models combine with a detailed specification of how they should be brought together into a system.»

«Unlike RTL, TLMs encompass multiple abstraction levels from cycle-accurate to untimed token models. Verification tools then allow RTL and transaction-level models to be combined in the same simulation. »

Отредактировано Лис (2025-05-30 18:24:50)

0


Вы здесь » Нужен автокод - иностранцам вежливо настраивать язык кириллический » TLM, RTL » Моделирование на уровне транзакций