Суворова Е.А., Шейнин Ю.Е. Проектирование цифровых систем на VHDL (2003) (1095892), страница 70
Текст из файла (страница 70)
5.27. Временная диаграмма работы компонента ччйо!е агЬ (а — модельное время от 0 до 100 нс., б — модельное время от 100 до 220 но.) ЧЧНВОЗЯЕСт ччньоскт ЧЧНЯЕАОУ ччнвОйзт ЧЧНЯЕЗР ЧЧНАООЯ ЧЧНЗРОТ ччнсйантт ЧЧНМАЗТЕЯ ЧЧНЗЕЬа ЧЧАОгпвн ЧЧ0101аа1 ЧЧса1вче 2 1 2 з 1 Глава 5 ЗВ4 йЕВЕтп а с!к Нйават нп зе!пензпав! '0' асеев!!паз! '1' НЕОЕНЕОп! 110 000 01 001 000 100 11 010 000 000 ньоскм оао ммвск оооо оооаоооооооаооа нойпнтт 1оо 1оо 01 оа1 1ОО Астав!е нмпатсоск 'о о 1 2 3 2 1 2 1 нмАетей 1 г 3 г 2 1 2 1 2 3 2 1 2 Рио.
8.28. Временная диаграмма работы компонента о агЬ йЕЗЕТп '1' са НйЕАОУ '1' а11 ооо нвийвт оо! ооо 001 оаа НвсайЕО '1' ве!певзпав! '0' асеев!пав! 1 с пекиаае вв! ва в10 31! и!п з!! аб Мп в! в!и в!и г Рис. 8.29. Временная диаграмма работы компонента с епб В 3-м такте второе и третье ведушие устройства запрашивают шину: нвввввои='озз (рис. 5.27). В соответствии с выбранной схемой арбитража, !пасса вес!зв! вано! оип!аз! с зии снп!Овгз! оооаоооаоо ооооооооооо 01О 1ОО 01 !О -1- -а'- --'3--- ---\--- --е- " — 1-- -2' Ф 0 2 3 о г о г о Практика применения МНОЬ блок выбора ведушего устройства, в качестве кандидата на использование шины адреса и управления, выбирает второе ведушее устройство (еаиаее=г), поскольку оно имеет наивысший приоритет среди устройств, запросивших шину.
Поскольку в этом такте блок определения конца запроса находится в состоянии ееь, его следуюшее состояние также ееь, а ввкиу='ь', то сигналы ееьпе~аьзее и яопеъчпеее установлены в 'ь'. Это позволяет компоненту выбора ведущего устройства в 4-м такте предоставить шины адреса и управления второму ведущему устройству: левее=г, вихяткя=г, ноклнтн="оьоо" . Собственником же линий данных становится ведушее устройство„которое до этого владело линиями адреса и управления, т. е. первое ведущее устройство. В 4-м такте второе ведушее устройство выставляет адрес "о оь ь ", нвоият="оо" (ятнаьк) и сбрасывает сигнал запроса шины, т.
е. выполняется запрос, включающий в себя одно обрашение к ведомому устройству с номером 2, в соотвествии с таблицей адресов. Поскольку выполняется запрос одного слова данных, компонент определения конца запроса остается в состоянии еец нкклцт= ь, поэтому ееьпе~апаее='ь и яопеапаее='1'. В этом такте компонент определения ведущего устройства, в качестве кандидата на использование шин адреса и управления, определяет третье ведушее устройство.
В 5-м такте оно становится собственником линий адреса и управления, а второе ведущее устройство становится собственником линий данных. В соответствии с адресом, выставленным в 4-м такте, компонент выбора ведомого устройства определяет кандидата на использование линий данных — ееь=г. Поскольку наклпт= ь, и в этом такте някьн="оьоо"=4, то сигнал някь для второго ведомого устройства устанавливается в ь'. Сигнал оопеъваее='ь; зто позволяет компоненту выбора ведомого устройства в 5-м такте предоставить линии данных ведомому устройству номер 2 — сеьаее=г. В 5-ом такте второе ведушее устройство перестает быть собственником линий адреса и управления, оно становится собственником линий данных.
Ведомое устройство 2 участвует в этом обмене и является собственником линий данных. Выполняется фаза данных, единственная в этом запросе. Поскольку нкклпх= з, ее длительность составляет 1 такт. В этом такте собственником линий адреса становится ведущее устройство 3. Оно выставляет адрес "от ос", нвцяят=- ооь" — устройство собирается выполнить пакетный запрос неопределенной длины. В соответствии с этим, блок определения конца запроса выбирает свое следующее состояние — ееп, следовательно, ее1пе~апаее= ' о ', допеъчеаее= ' ь '. В соответствии с этим, в б-м такте ведущее устройство 3 останется собственником линий адреса и управления и еше станет собственником линий данных.
Компонент определения ведомого устройства в 5-м такте определяет, в соответствии с выставленным адресом, третье ведомое устройство в качестве кандидата на участие в обмене (ее1=з, някып="ооьо"=г). Глава 5 886 йЕЗЕТп сй з а о о НЙЕзр о оооо 0002 оооо Нзр1Я г з Огпвз1 ММвсз 4ООО ОООО оооо оооо "..1';.„-::;".;,' "'!,;„'".,!;",.:,'„.2'::;:Ойег!!:;"„.."42ОЙВ'..','.;:,~.;!.-:ЗОПЗ1;.Т;,.:Оайэ1';-'1:;:!ВОПВ112чптзрООЕПК~З . *~я34ОП о' йЕЯЕТп 'о' са х 1аоо 01ОО 001О 1ооа аоо1 оооо г з 1 4 з 1 4 о' йЕВЕТп о са 0101 011О о 1ОСО 0001 01ОО 0001 сача оооо 4 г зы Рис.
3.31. Временная диаграмма работы компонента с ве1. (в — модельное время ст 0 да 100 нс., б — модельное время ст 100 дс 220 нс.) нарой Оспечепзм НЗЕЬз сз1аче зааг 1вЫе няоой Оспемпез1 НВЕ1.з сз1ече есаг 1зые Рис. 5.30. Временная диаграмма работы компонента с вррд оооо 0011 01оо 1а1 011а оооо 0111 10 1оо1 1а1о оооо 0111 1ооо 1оо1 1очо ао11 1о1о 387 Практика применения ЧНР[. 2 1 2 3 2 1 2 1 1 2 1 2 3 г 1 2 2 4 2 г з г з о г о 2 3 о о 1 о о пгьеббг гпкаббг[1) оооо ОО11 оооо оо!! оооо оо!! оооо О1ОО ОООО ОООО О)ОО О!О1 О!!О о з о Е в Г р о апгеар агпеар[1) з о о о еагба!а[1) аьмам[г] епгбам[З) сап[а!а[4] апаббг ООО1 ООО1 ОО1О ОО1О О1ОО О1ОО 1ООО 1ООО о о о 1 О оооо оооо Рис.
5.32. Временная диаграмма работы компонента с гпиха ссарпгаа! ссо! пгаа1 оса!ауе гпйгапа пгмипа[1) ми па[г] тп!гапа[з] ььсм! г пыли!В) пгьесга![2] пгьь е![з) пгпнб!е пгпаббг[2) пгааббг[З) пгнпбам Ьгеабу пгагеар пгагбам апгаабу самар[2] аьгеар[з) аагеар[4) аагба!а аьпй!е 431гапа еьасга! аписа! 2 О 2 2 о оооо О1!1 !ООО 1ОО1 !о!о ООО1 ООО1 ОО1О О1ОО ООО1 1ООО Ос!с !ООО ОО1О ОО!! ОООО О11ООООО1О1 О11ОООООО1111ООО1ОО!!О!О О!1!О!ООО111Ога г о 2 3 о г з г о Со) ЗВ8 Глава 5 В 6-м такте осуществляется обмен первым словом данных между третьим ведущим устройством и третьим ведомым устройством.
Третье ведущее устройство выставляет на линии адреса адрес второго слова "о1о1". Поскольку это слово не последнее в пакете, то ведущее устройство 3 продолжает поддерживать сигнал запроса шины в активном состоянии. В соответствии с этим, компонент определения конца запроса выбирает свое следующее состояние — в со.
В результате, в 7-м такте ведущее устройство 3 остается собственником линий адреса, управления и данных. В 7-м такте ведущее устройство номер 3 выставляет на линии адреса адрес третьего (последнего) слова в запросе "оп.о" . Поскольку это слово является последним, ведущее устройство сбрасывает сигнал запроса шины. В этом такте между ведущим устройством 3 и ведомым устройством 3 по линиям данных осуществляется обмен вторым словом данных. Ведомое устройство не готово завершить обмен в этом такте, оно выставляет нкклпт= ' о '.
В соответствии с этим, компонент определения конца запроса определяет свое следующее состояние как в со, вв1лввввав е= ' о ', доввыпаве= ' о '. В результате, все шины остаются за их прежними владельцами. В 8-м такте ведущее устройство номер 3 продолжает выставлять на линии адреса адрес третьего слова данных. На линиях данных продолжается обмен вторым словом данных. нкквпт='1' — ведомое устройство готово завершить обмен в этом такте.
Сигнал запроса шины от ведущего устройства 3 сброшен, поэтому блок определения конца запроса определяет свое следующее состояние как вез, поэтому сигналы вв1вввваве и яоввввваве устанавливаются в 'т . В этом такте ни одно ведущее устройство не запрашивает шину, кандидата на использование шины нет, винавер.='о'; в результате, в следующем такте шина адреса и данных предоставляется ведущему устройству по умолчанию.
В 9-м такте ведущее устройство номер 3 обменивается последним словом данных с третьим ведомым устройством. В !1-м такте первое ведущее устройство выставляет запрос шины; поскольку оно уже получило разрешение на использование шины, то оно сразу же начинает использовать линии адреса и управления. Оно выставляет адрес "оз1т" и нвпкят="отт "свнск4.
Ведущее устройство начинает пакетный запрос длины 4 к четвертому ведомому устройству. В соответствии с этим, компонент определения конца запроса в 12-м такте переходит в состояние вго и устанавливает счетчик соивеьогве=з. В 12-м такте ведущее устройство выставляет адрес второго слова в запросе и осуществляет обмен первым словом данных. Поскольку со савве>о, компонент определения конца запроса определяет свое следующее состояние как всв. В 13-м такте ведущее устройство выставляет адрес третьего слова, осуществляется обмен вторым словом данных.