Skip to content

Commit 469f42e

Browse files
authored
Корректировка конспектов лекций (#131)
* Корректировки конспектов лекций * Корректировка конспекта лекции 5 * Корректировка конспекта лекции 8 * Корректировка конспекта лекции 9 * Корректировка конспекта лекции 10 * Корректировка конспекта лекции 11 * Корректировка конспекта лекции 12 * Корректировка конспекта лекции 13 * Корректировка конспекта лекции 12 * Корректировка конспекта лекции 14 * Корректировка конспекта лекции 16 * Корректировка конспекта лекции 17 * Корректировка конспекта лекции * Корректировка конспекта лекции 20 * Корректировка конспекта лекции 21 * Корректировка конспекта лекции 22 * Корректировка конспекта лекции 23 * Корректировка конспекта лекции 13 * Корректировка конспекта лекции 12 * Корректировка конспекта лекции 20
1 parent 773af10 commit 469f42e

16 files changed

+116
-111
lines changed

Lectures/04. Operations units.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
![../.pic/Lectures/04.%20Operations%20units/fig_03.png](../.pic/Lectures/04.%20Operations%20units/fig_03.png)
1818

19-
Еще одной важной темой, которую мы затронули, пыли числа с фиксированной и плавающей запятой. Числа с фиксированной запятой фактически не отличаются от целых чисел. Их недостаток в том, что если после запятой оставить много знаков, то будет проблематично записать большое число. А если оставлять мало чисел после запятой, то наоборот. Проблему частично решают числа с плавающей точкой (запятой).
19+
Еще одной важной темой, которую мы затронули, были числа с фиксированной и плавающей запятой. Числа с фиксированной запятой фактически не отличаются от целых чисел. Их недостаток в том, что если после запятой оставить много знаков, то будет проблематично записать большое число. А если оставлять мало чисел после запятой, то наоборот. Проблему частично решают числа с плавающей точкой (запятой).
2020

2121
Общепринятым стандартом являются числа закодированные по стандарту IEEE754. 32-битный формат таких чисел называют float, а 64-битный называют — double. Такой формат является экспоненциальной записью двоичного числа и содержит три поля Sign (Знак, 1 — если число отрицательное), Exponent (Показатель степени) и Mantissa, а число представляется как мантисса умноженная на 2 в степени экспоненты. При этом экспонента сохраняется в смещённом формате, то есть из ее закодированного значения надо предварительно вычесть 127. Мантисса же записывается так, чтобы точка в числе стояла сразу после первой значащей цифры. При этом эта единица в поле Mantissa не записывается. Она называется подразумеваемой единицей.
2222

Lectures/05. Sequencial logic.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
![../.pic/Lectures/05.%20Sequencial%20logic/fig_05.png](../.pic/Lectures/05.%20Sequencial%20logic/fig_05.png)
2222

23-
Кроме этого поговорили про синхронизацию в цифровых устройствах, основной вывод таков — чем короче комбинационная схема, тем выше частота работы. Так же скорость работы цифровых устройств зависит от временных особенностей регистров, используемых в этом устройстве. Триггерам, в составе регистров, требуется чтобы сигнал был устоявшимся в течении некоторого времени перед фронтом синхроимпульса (tsetup), плюс, требуется время для того, чтобы на выходе регистра сформировался установившийся сигнал (tpcq).
23+
Кроме этого поговорили про синхронизацию в цифровых устройствах, основной вывод таков — чем короче комбинационная схема, тем выше частота работы. Так же скорость работы цифровых устройств зависит от временных особенностей регистров, используемых в этом устройстве. Триггерам, в составе регистров, требуется, чтобы сигнал был устоявшимся в течении некоторого времени перед фронтом синхроимпульса (tsetup), плюс, требуется время для того, чтобы на выходе регистра сформировался установившийся сигнал (tpcq).
2424

2525
![../.pic/Lectures/05.%20Sequencial%20logic/fig_06.png](../.pic/Lectures/05.%20Sequencial%20logic/fig_06.png)
2626

Lectures/08. Singlecycle processor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
![../.pic/Lectures/08.%20Singlecycle%20processor/fig_01.png](../.pic/Lectures/08.%20Singlecycle%20processor/fig_01.png)
1818

19-
Ввиду своей простоты, в первую очередь был разработан процессор с однотактной микроархитектурой с архитектурой RISC-V. Тракт данных процессора состоит из счетчика команд (регистр PC — program counter), памяти инструкций (Instruction Memory), регистрового файла (Register File), арифметико-логического устройства (ALU), памяти данных (Data Memory) и основного дешифратора (Main Decoder). На входе PC располагается схема вычисления адреса следующей инструкции. Выход PC подключен к адресному входу памяти инструкций, тем самым выбирая инструкцию для исполнения. Часть битов считанной инструкции отправляются в основной дешифратор, который в зависимости от поля opcode, funst3 и funct7 формирует управляющие сигналы для всех блоков процессора.
19+
Ввиду своей простоты, в первую очередь был разработан процессор с однотактной микроархитектурой с архитектурой RISC-V. Тракт данных процессора состоит из счетчика команд (регистр PC — program counter), памяти инструкций (Instruction Memory), регистрового файла (Register File), арифметико-логического устройства (ALU), памяти данных (Data Memory) и основного дешифратора (Main Decoder). На входе PC располагается схема вычисления адреса следующей инструкции. Выход PC подключен к адресному входу памяти инструкций, тем самым выбирая инструкцию для исполнения. Часть битов считанной инструкции отправляются в основной дешифратор, который в зависимости от поля opcode, funct3 и funct7 формирует управляющие сигналы для всех блоков процессора.
2020

2121
![../.pic/Lectures/08.%20Singlecycle%20processor/fig_02.png](../.pic/Lectures/08.%20Singlecycle%20processor/fig_02.png)
2222

Lectures/09. Multicycle processor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131

3232
Такой подход позволяет значительно уменьшить управляющую память, за счет чего она получится быстрее. Однако, микроинструкции ветвления, при таком подходе, требуют дополнительного такта на обработку (когда признак равен 1 нет операционной части).
3333

34-
Когда управляющая память хранит значения всех сигналов процессора в естественной форме, это называется *горизонтальным микропрограммированием*. Это значит, что, если устройство управления должно формировать, например, 50 управляющих сигналов для всех блогов процессора, то каждая микроинструкция будет включать в себя операционную часть длинной в 50 бит, то есть отдельный бит для каждого управляющего сигнала.
34+
Когда управляющая память хранит значения всех сигналов процессора в естественной форме, это называется *горизонтальным микропрограммированием*. Это значит, что, если устройство управления должно формировать, например, 50 управляющих сигналов для всех блоков процессора, то каждая микроинструкция будет включать в себя операционную часть длинной в 50 бит, то есть отдельный бит для каждого управляющего сигнала.
3535

3636
Горизонтальное микропрограммирование не требует наличие дешифратора на выходе УМУ, однако, для хранения всех значений сигнала потребуется относительно большая память, что повлияет на скорость ее работы. Альтернативой является *вертикальное микропрограммирование*, в котором каждой длинной последовательности сигналов (например, 50 в нашем примере) ставится в соответствие более короткая последовательность (например, из 10 бит). В таком случае на выходе УМУ требуется расположить дешифратор, который будет преобразовывать короткий код в длинный.
3737

Lectures/10. Pipeline processor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
- По данным (вызванные зависимостью по данным между несколькими соседними инструкциями). Существует три типа конфликтов по данным:
3535
- RAW (read after write — чтение после записи, при котором новая инструкция пытается получить значение из памяти, которая предыдущая инструкция еще не успела туда записать). Разрешается, переброской результата или методом пузырька (приостановкой конвейера)
3636
- WAR (write after read — запись после чтения, при котором новая инструкция пытается разместить данные в памяти до того, как старая инструкция успела их оттуда считать). Конфликт возникает в системах с внеочередным исполнением команд, то есть в таких, где заданная программистом последовательность инструкций может быть изменена с целью увеличения производительности. Разрешается конфликт, например, методом пузырька или переименовыванием регистров
37-
- WAW (write after write — запись после записи, при котором более ранняя инструкция размещает значение в памяти позже, чем более поздняя инструкция, тем самым нарушая порядок записи в память). Разрешается конфликт так же как и в конфликтах типа WAR.
37+
- WAW (write after write — запись после записи, при котором более ранняя инструкция размещает значение в памяти позже, чем более поздняя инструкция, тем самым нарушая порядок записи в память). Разрешается конфликт так же, как и в конфликтах типа WAR.
3838
- По управлению (вызванный неоднозначностью того, какая инструкция должна быть загружена после инструкции условного перехода, так как результат перехода будет известен только на стадии Execute, а загружать новую инструкцию надо уже, когда команда условного перехода будет на стадии Decode). Конфликт разрешается методом пузырька, либо предположением о том, произойдет переход или нет. В случае успешного предсказания потери производительности не происходит. В случае неверного предсказания, ступени конвейера, в которые были загружены неправильные команды должны очиститься.
3939

4040
В среднем, каждая 7 инструкция в программе является инструкцией условного перехода. Поэтому конфликты по управлению сильнее всего влияют на производительность конвейерного процессора.

Lectures/11. Pipeline hazards.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848

4949
Обычно статические методы используются в связке с динамическими, которые собирают статистику переходов в реальном времени и на основе этой статистики делают предположение о переходе. В основе динамических методов лежат несколько подходов к накоплению информации (статистики) о совершенных переходах.
5050

51-
PHT (pattern hystory table) — специальная память, состоящая из двухбитных ячеек памяти, доступ к которым происходит по некоторому паттерну. Если условный переход происходит, то значение ячейки памяти из PHT закреплённой за этим условным переходом, увеличивается на 1 (но не больше максимального значения 11). Если переход не происходит, то уменьшается на 1 (но не меньше минимального значения 00). Предсказанием является старший из этих двух бит, если он 1, то делается предсказание, что переход произойдёт, если он равен 0, то делается предположение, что он не произойдёт.
51+
PHT (pattern history table) — специальная память, состоящая из двухбитных ячеек памяти, доступ к которым происходит по некоторому паттерну. Если условный переход происходит, то значение ячейки памяти из PHT закреплённой за этим условным переходом, увеличивается на 1 (но не больше максимального значения 11). Если переход не происходит, то уменьшается на 1 (но не меньше минимального значения 00). Предсказанием является старший из этих двух бит, если он 1, то делается предсказание, что переход произойдёт, если он равен 0, то делается предположение, что он не произойдёт.
5252

5353
GHR (global history register) — регистр глобальной истории, являющийся сдвиговым регистром некоторой длинны, сдвигающий данные каждый раз, когда поступает на исполнение инструкция условного перехода, при этом в регистр задвигается 1, если переход произошёл, и 0, если нет. Таким образом регистр хранит историю результатов переходов последних n (разрядность регистра) инструкций условного перехода.
5454

0 commit comments

Comments
 (0)