Звоните! 
 (926)274-88-54 
 Бесплатная доставка. 
 Бесплатная сборка. 
Ассортимент тканей

График работы:
Ежедневно. С 8-00 до 20-00.
Почта: soft_hous@mail.ru
Читальный зал -->  Программные средства foundation 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 [ 108 ] 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359

Но не вся необходимая информация может находиться в библиотеке wor к . Например, разработчик может опираться на определения и функциональные модули, общие для некоторого семейства различных проектов. У каждого проекта есть своя собственная библиотека work (обычно это подкаталог внутри всего каталога, относящегося к данному проекту), но в нем должны быть ссылки на общую библиотеку, содержащую совместно используемые определения. Даже в малых проектах может использоваться библиотека, которая содержит, например, стандартные определения ШЕЕ. Разработчик может присвоить имя такой библиотеке с помощью предложения 1 ibra гу{1 ibra г у clause) в начале соответствующего файла. Например, библиотеку IEEE можно задать фразой:

library ieee;

Предложение library work; помещается в начале каждого файла VHDL-проекта неявно.

Присвоение имен библиотекам проекта обеспечивает доступ к любым ранее проанализированным и запомненным объектам и архитектурам, но не к определениям типов и тому подобному. Эту функцию выполняют пакеты и предложения use .

WUDh-пакет (package) - это файл, содержащий определения элементов, которые могут быть использованы другими программами. В пакет можно включить элементы такого рода, как сигнал, тип, константа, функция, процедура и объявления компонентов.

Помещенные в пакет сигналы являются глобальными и доступны любому VHDL-объекту, использующему этот пакет. Типы и константы, упомянутые в пакете, известны в любом файле, использующем этот пакет. Аналогично, из файлов, использующих данный пакет, можно вызвать перечисленные в нем функции и процедуры, а архитектуры, опирающиеся на этот пакет, могут обрабатывать включенные в него компоненты, описываемые в следующем разделе.

Проект может использовать тот или иной пакет, если в начало файла, относящегося к данному проекту, помещено предложение use (use clause). Например, чтобы воспользоваться всеми определениями пакета, содержащего стандарт IEEE И 64, нам следует написать:

use ieee.std logic 1164.all;

Здесь ieee - это имя библиотеки, ранее введенное предложением library. В этой библиотеке файл с именем std logic ll 64 содержит желаемые определения. Приставка all велит компилятору использовать все определения этого файла. Вместо all можно написать имя какого-то одного элемента, когда необходимо использовать только его определение, например:

use ieee.std logic 1164.std ulogic;

Эта фраза обеспечит доступ только к определению типа std ulogic, приведенному в табл. 4.32, без учета всех других родственных типов и функций. Однако, записывая подряд несколько предложений use , можно добавить использование и других определений.



VHDL-СТАНДАРТЫ IEEE

Язык VHDL предоставляет замечательную возможность расширять типы данных и множество функций. Это важное свойство, поскольку встроенные типы BIT и BIT VECTOR, в действительности, вовсе не адекватны требованиям моделирования реальных схем, когда обрабатьшаемые сигналы могут соответствовать третьему состоянию, а также быть неизвестными, безразличными и меняющейся интенсивности.

Поэтому вскоре после формализации языка в стандарте IEEE 1076 коммерческие поставщики начали вводить свои собственные встроенные типы данных, чтобы оперировать логическими величинами, отличающимися от О и L У разных поставщиков были, конечно, различные определения для этих расширенных типов, из-за чего началось возведение Вавилонской башни .

Чтобы избежать этого. Институтом инженеров по электротехнике и элек-тронике был разработан стандартный логический пакет 1164 (std logic 1164), девятизначная логическая система которого удовлетворяет большую часть потребностей проектировщиков. За этим пакетом позднее последовал стандарт 1076-3, описываемый в разделе 5.9.6, который содержит несколько пакетов со стандартными типами и операциями для векторов STD LOGIC, интерпретируемых как целые числа со знаком и без знака. Эти пакеты включают std logic arith, std logic signed и std logic unsigned.

Следование стандартам ШЕЕ гарантирует разработчикам высокую степень переносимости их проектов и возможность их взаимодействия. Последнее становится все более важным, так как переход на очень большие специализированные ИС делает необходимой кооперацию не только многих проектировщиков, но также и многих поставщиков, каждый из которых вносит свой вклад в создаваемую по кусочкам систему в одном кристалле .

Табл. 4.40. Синтаксис определения package package-name is VHDL-пакета

type declarations

signal declarations

constant declarations

component declarations

function declarations

procedure declarations end package-name; package body package-name is

type declarations

constant declarations

function definitions

procedure definitions end package-name;



Стандартными пакетами не исчерпываются все возможности. Любой разработчик может написать свой собственный пакет согласно синтаксису, приведенному в табл. 4.40. Все элементы, объявленные между package и первым оператором end , видны из любого файла проекта, использующего этот пакет; элементы, следующие за ключевым словом package body , являются локальными. Заметьте, в частности, что первая часть содержит объявления функций , но не определения. В объявлении функции (function declaration) перечислены только имя функции, аргументы и тип вплоть до ключевого слова is в табл. 4.35, но не включая его. Полное определение функции приводится в теле пакета и пользователи функции его не видят.

4.7.6. Элементы структурного проектирования

Теперь мы, наконец, готовы взглянуть на внутренности VHDL-проекта, на исполняемую часть архитектуры. Вспомним, что согласно табл. 4.28 тело архитектуры представляет собой ряд параллельных операторов (concurrent statements). В языке VHDL каждый параллельный оператор исполняется одновременно с другими параллельными операторами в теле данной архитектуры.

Такой режим исполнения заметно отличается от последовательного выполнения операторов в программном обеспечении, написанном на одном из обычных языков программирования. Параллельные операторы необходимы для того, чтобы отобразить поведение схемы, у которой соединенные между собой элементы воздействуют друг на друга непрерывно, а не в отдельные моменты времени, следующие один за другим в определенном порядке. Таким образом, правило моделирования состоит в том, что в случае, когда последним оператором в теле VHDL-архитектуры изменяется сигнал, используемый в первом операторе данной архитектуры, программа должна вернуться назад к первому оператору и скорректировать его результаты, приведя их в соответствие с только что изменившимся сигналом. На самом деле моделирующая профамма будет осуществлять множественные изменения и обновления результатов до тех пор, пока моделируемая схема не стабилизируется; подробнее мы рассмотрим этот вопрос в разделе 4.7.9.

В языке VHDL есть несколько параллельных операторов, а также механизм связывания в один узел набора последовательных операторов с тем, чтобы они исполнялись, как один параллельный оператор. Различное использование параллельных операторов привело к возникновению трех стилей проектирования и описания схем, слегка отличающихся один от другого; об этом и пойдет речь в данном разделе и двух следующих.

Самым главным параллельным оператором в языке VHDL является оператор сотропеп t (сотропеп t statement), синтаксис которого указан в табл. 4.41. Здесь component-name - имя определенного ранее объекта, который должен быть использован или подвергнут обработке (instantiate) в теле данной архитектуры. Для каждого оператора component с обращением к названному объекту создается одна копия этого объекта; каждая копия должна иметь уникальную метку label.



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 [ 108 ] 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359



ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку.



Звоните! Ежедневно!
 (926)274-88-54 
Продажа и изготовление мебели.


Копирование контента сайта запрещено.
Авторские права защищаются адвокатской коллегией г. Москвы
.