ВУЗ:
Составители:
Рубрика:
Микропроцессорные системы и программное обеспечение в средствах связи 
222
последний обрабатываемый отсчёт. Например, на рис. 4.5, a) указатель 
содержит адрес 20044, в то время как на рис. 4.5, б) он содержит адрес 
20045.  Когда  появляется  новый  отсчёт,  он  заменяет  самый «старый» 
отсчёт  в  массиве,  и  указатель  перемещается  на  один  адрес  вперед. 
Круговые буферы эффективны, потому что когда появляется новый от-
счёт, должно быть изменено
 только одно значение – значение указате-
ля. 
Чтобы  управлять  круговым  буфером,  необходимы  четыре  пара-
метра. Первый – указатель, который указывает начало кругового буфе-
ра в памяти (в этом примере, 20041). Второй – указатель на  конец мас-
сива (например, 20048), или  переменная,  которая  содержит  его  длину 
(например, 8). Третий  параметр – шаг  адресации  памяти.  На  рис. 4.5 
размер шага
 равен единице, например: ячейка с адресом 20043 содер-
жит один отсчёт, ячейка с адресом 20044 содержит следующий отсчёт, 
и так далее. Часто значение шага исключительно важно. Например, ад-
ресация может относиться к байтам, и каждый отсчёт может требовать 
двух или четырех байт, чтобы вместить его значение. Соответственно, 
размер шага  должен быть равен 
двум или четырём. Эти три параметра 
определяют размер и конфигурацию кругового  буфера, и не будут ме-
няться в течение выполнения программы. Четвертый параметр – указа-
тель на самый последний отсчёт, должен изменяться с каждым появле-
нием  нового  отсчёта.  Другими  словами,  должна  использоваться  про-
граммируемая логика, которая контролирует, как обновляется значение 
четвертого  параметра
,  основываясь  на  значении  первых  трех  пара-
метров. Так как эта логика  весьма проста, она должна быть очень бы-
стродействующей.  ПЦОС  должны  быть  оптимизированы  для  примене-
ния  управляющих круговых буферов так, чтобы достичь самой высокой 
из возможных скоростей работы. 
Пусть для каждого нового отсчёта в схеме на рис. 4.5, ПЦОС дол-
жен 
выполнить  следующую операцию : 
  Микропроцессорные системы и программное обеспечение в средствах связи
последний обрабатываемый отсчёт. Например, на рис. 4.5, a) указатель
содержит адрес 20044, в то время как на рис. 4.5, б) он содержит адрес
20045. Когда появляется новый отсчёт, он заменяет самый «старый»
отсчёт в массиве, и указатель перемещается на один адрес вперед.
Круговые буферы эффективны, потому что когда появляется новый от-
счёт, должно быть изменено только одно значение – значение указате-
ля.
      Чтобы управлять круговым буфером, необходимы четыре пара-
метра. Первый – указатель, который указывает начало кругового буфе-
ра в памяти (в этом примере, 20041). Второй – указатель на конец мас-
сива (например, 20048), или переменная, которая содержит его длину
(например, 8). Третий параметр – шаг адресации памяти. На рис. 4.5
размер шага равен единице, например: ячейка с адресом 20043 содер-
жит один отсчёт, ячейка с адресом 20044 содержит следующий отсчёт,
и так далее. Часто значение шага исключительно важно. Например, ад-
ресация может относиться к байтам, и каждый отсчёт может требовать
двух или четырех байт, чтобы вместить его значение. Соответственно,
размер шага должен быть равен двум или четырём. Эти три параметра
определяют размер и конфигурацию кругового буфера, и не будут ме-
няться в течение выполнения программы. Четвертый параметр – указа-
тель на самый последний отсчёт, должен изменяться с каждым появле-
нием нового отсчёта. Другими словами, должна использоваться про-
граммируемая логика, которая контролирует, как обновляется значение
четвертого параметра,    основываясь на значении первых трех пара-
метров. Так как эта логика весьма проста, она должна быть очень бы-
стродействующей. ПЦОС должны быть оптимизированы для примене-
ния управляющих круговых буферов так, чтобы достичь самой высокой
из возможных скоростей работы.
      Пусть для каждого нового отсчёта в схеме на рис. 4.5, ПЦОС дол-
жен выполнить следующую операцию :
                                   222
Страницы
- « первая
 - ‹ предыдущая
 - …
 - 220
 - 221
 - 222
 - 223
 - 224
 - …
 - следующая ›
 - последняя »
 
