«…Труд избавляет человека от трех великих зол: скуки, порока, нужды…»

OVM/OVM методология/Основы Testbench

Материал из Wiki
< OVM‎ | OVM методология
Версия от 03:25, 26 марта 2013; Vidokq (обсуждение | вклад)

Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Перейти к: навигация, поиск

Основы Testbench

Чтобы ответить на вопросы does-it-work, мы должны провести разработку с известными входными воздействиями и определить, реагирует ли конструкция так, как задумано. То есть, мы должны контролировать и наблюдать за DUT.

5.1 драйвера и мониторы

Два из наиболее фундаментальных объектов в тестбенчах являются драйвера и мониторы. Драйвер преобразует поток операций в переключения на выводе на уровне интерфейса. Монитор делает обратное, он преобразует переключения на уровне контактного интерфейса в поток операций. Драйверы используются для управления DUT путем применения воздействий, а в мониторы используются для наблюдения за ответами. Чтобы понять, как создавать и использовать драйверы и мониторов, мы начнем пример с уровня транзакций, который иллюстрирует генератор воздействий (memory master) связанный с управляемой памятью. Управляемая память находится напротив драйвера. В то время как истинный драйвер имеет пин-уровень связи, управляемая память его не имеет. Чтобы управляемая память и драйверы были вместе, их интерфейсы обмена интерфейсов и их архитектуры тоже вместе (объединены). После построения понимания на уровне транзакций, например, мы будем расширять его использование на контактный уровень общения, обмена. В memory master генерирует поток запросов операций(транзакций) и отправляет их через транспортный канал в memory slave. Ведомый обрабатывает каждый запрос и формирует ответ, который он посылает обратно к ведущему через транспортный канал.

Sc g 5.1 p1.png

First, let’s look at the plumbing of this example, that is, the connectivity and data flow through the components. The transport channel is composed of two opposing FIFOs, one for requests and one for responses, and a transport interface. The memory master connects to the transport interface on the channel. As you might recall from Section 3.4.3, the transport interface allows the memory master to guarantee that requests and responses are synchronized. The slave interface, as the name suggests, is for devices that must respond to requests; whereas, the transport interface is for devices that generate requests.

Во-первых, давайте посмотрим на сантехника из этого примера, то есть соединения и потока данных через компоненты.Транспортный канал состоит из двух противоположных FIFO, один для запросов и один для ответов и транспорта интерфейс. В памяти мастера подключается к интерфейсу транспорта на канале. Как вы, возможно, помните из раздела 3.4.3, транспортный интерфейс позволяет память мастера, чтобы гарантировать, что запросы и ответы будут синхронизированы. Ведомый интерфейс, как следует из названия, предназначена для устройств, которые должны отвечать на запросы, в то время, транспортный интерфейс для устройств, которые генерируют запросы.