User Tag List

Страница 34 из 41 ПерваяПервая ... 303132333435363738 ... ПоследняяПоследняя
Показано с 331 по 340 из 404

Тема: Изучение с "нуля" VHDL и ПЛИС Xilinx

  1. #331

    Регистрация
    21.04.2015
    Адрес
    г. Всеволожск
    Сообщений
    52
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    P - (parity) бит чётности (1)
    Какой в нем практический смысл?

    Z - (zero) бит нуля (2)
    Тоже самое. Ноль он и есть ноль - зачем дополнительный флаг?
    Радио-86РК, Апогей БК01

  2. #331
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #332

    Регистрация
    09.04.2009
    Адрес
    Зеленоград
    Сообщений
    449
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    429
    Поблагодарили
    196 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Флаг Z - необходим для ветвлений по =0.
    А вот для каких вычислений бит четности - не понятно.

  4. #333

    Регистрация
    21.04.2015
    Адрес
    г. Всеволожск
    Сообщений
    52
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Чтобы понять чётный результат или нет. Можно использовать в условных переходах.
    Четность показывает сколько единиц в слове. При этом четность результата зависит от младшего бита. Это разные вещи.

    То же самое, чтобы понять равен результат нулю или нет.
    Так может просто сравнивать с нулем и все? Сама инструкция перехода пусть это делает, отдельный бит не нужен.

    Хоть он и не часто используется, но пусть будет, пригодится
    Недалее как, был разговор как бы сделать так чтобы все влезло
    Радио-86РК, Апогей БК01

  5. #334

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вообще в проце достаточно 1 флага алу, можно его стек вместе с PC ложить, если инструкции с выравниванием по 32бит в памяти, то там есть целых 2 бита свободных

    А команда сравнения, ставит флаг если условие истина
    сравнения банальные a<b a<=b a==b, если сильно хочется можно еще четность, parity, a==0, a<0
    в командах сложения вычитания, флаг работает как перенос/заем работает
    в командах сдвига, вытесненный добавочный бит

    команд ветвления парочку хватати, if (flag) jump и if (!flag)

    но это из темы процессоров с минимальным набором инструкций

  6. #335

    Регистрация
    09.04.2009
    Адрес
    Зеленоград
    Сообщений
    449
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    429
    Поблагодарили
    196 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Strijar Посмотреть сообщение
    Так может просто сравнивать с нулем и все? Сама инструкция перехода пусть это делает, отдельный бит не нужен.
    К сожалению, если только ЭТО надо было бы использовать в командах ветвления,
    то да, отдельный флаг не нужен. В том же MIPS-е для остальных условных переходов (кроме !=) приходится использовать регистр и дополнительную команду для вычислений условий, что не намного лучше команды CMP.

  7. #336

    Регистрация
    21.04.2015
    Адрес
    г. Всеволожск
    Сообщений
    52
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В том же J1 был условный переход если равно 0 (true). И добавочно две инструкции сравнения на == и < результатом которой -1 (false) или 0 (true). Через это можно сделать все остальное
    Радио-86РК, Апогей БК01

  8. #337

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Viktor2312 Посмотреть сообщение
    Если их будет 2, то флаг поднят. Если их будет 32, то флаг поднят. И при чём тут количество единиц в числе?
    блин, тугой ты, сравни 6(0110) и 3(0011) оба вернут parity = 1 но одно четное одно нет

  9. #338

    Регистрация
    21.04.2015
    Адрес
    г. Всеволожск
    Сообщений
    52
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Странный подход. Сначала бы обдумать общую архитектуру, а АЛУ это уже частности.

    Когда я пробовал писать процессор - я посмотрел все имеющиеся в наличии. Гарвардские, фон-неймовские, регистровые, стековые итд итп. Оценил что мне нравиться, а что нет. Потом уже начал что-то делать. И то в конце концов получилось что мне запал один так как подходил почти полностью - то что не подходило и переделал.
    Радио-86РК, Апогей БК01

  10. #339

    Регистрация
    21.04.2015
    Адрес
    г. Всеволожск
    Сообщений
    52
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хорошо. Буду ждать конкретных вопросов. Чем смогу - помогу. Сам только учусь.
    Радио-86РК, Апогей БК01

  11. #340

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Viktor2312 Посмотреть сообщение
    signal cod_alu: std_logic_vector (7 downto 0);
    кстати, что бы не рыскать по всему интернету в поисках инструкций ALU
    есть замечательный ресурс, где все собрано в одном месте, есть разнообразные фильтры
    https://software.intel.com/sites/lan...trinsicsGuide/

    К сожалению только на английском, но там есть простой псевдокод, объясняющий что инструкции делают

    Думаю 8 бит для кода операции алу будет недостаточно, сейчас разумно 12-16 бит

    ---------- Post added at 01:23 ---------- Previous post was at 00:59 ----------

    И выход алу должен быть 64бит, умножение 2х 32 битных дает 64бит
    причем должно быть организовано как 2выхода по 32бит, так как то же, целочисленное деление, возвращает частное и остаток по 32бит

Страница 34 из 41 ПерваяПервая ... 303132333435363738 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 172
    Последнее: 28.11.2017, 13:28
  2. Микроконтроллеры STM32, "с нуля".
    от Viktor2312 в разделе Для начинающих
    Ответов: 279
    Последнее: 07.11.2016, 19:45
  3. Техническая литература: Языки описания аппаратуры "AHDL, VHDL и Verilog"
    от Viktor2312 в разделе Техническая литература
    Ответов: 1
    Последнее: 14.09.2014, 22:29
  4. Ответов: 71
    Последнее: 31.07.2014, 19:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •