Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн авг 08, 2011 18:52:23
SMD бывают разные - есть SSOP - у этих питание часто дублируется на 2-х соседних ножках. Поэтому у них на 2 лапки корпус больше.
Здесь можно немножко помяукать :)
https://radiokot.ru/forum/
Ни разу не замечал. Переделал кучу проектов, частоту МК всегда использовал 4МГц и выше (до 20МГц).TRIOD писал(а):...Народ подскажите почему при симуляции работы DS18b20 в Протеусе если частота контролера выше 2Мгц то всегда идут неправильные показания. Цифра ровно в два раза больше цифры на дачике...
Именно что смешиваете. Команды "регистр-регистр" -- это такие, у которых оба операнда расположены в регистрах общего назначения, а не в памяти. Заметьте: сами операнды, а не их адреса. Для PDP-11 таковой является, например, MOV R0, R1 (машинный код 010001 в восьмеричной системе; регистровая адресация). Все остальные виды адресации у PDP-11 предназначены для доступа к операндам в памяти. Например, MOV @R0, @R1 (код 011011) -- это команда "память-память", поскольку оба операнда находятся в памяти, в регистрах находятся лишь их адреса (так называемая косвенная регистровая адресация). Ваш же пример, с кодом 013737 -- это одна из разновидностей команды "память-память", а именно, MOV @#адрес1, @#адрес2 -- пересылка из одной ячейки с прямо заданным адресом в другую. Она действительно занимает три слова: первое содержит код операции и коды операндов, два других -- абсолютные адреса используемых ячеек памяти. Кстати, такой вид адресации на PDP-11 называется абсолютной, поскольку адреса -- абсолютные, а не вычисляемые каким-то образом в ходе выполнения команды.КРАМ писал(а):Положим я ничего не смешиваю... Это Вы несколько фантазируете и НЕВНИМАТЕЛЬНО читаете оппонента.
1. ПДП-11. Я говорил о командах ОЗУ-ОЗУ, а не регистр-регистр. И указал на это совершенно определенно. Такая команда имеет ТРИ слова. В непосредственной кодировке пересылка выглядит какИлиКод: Выделить всё
13737 <адрес операнда источника> <адрес операнда приемника>Сравним Ваше регистр-регистрКод: Выделить всё
12727 <источник> <приемник>Код: Выделить всё
10001
Термин ОЗУ имеет вполне конкретную расшифровку -- оперативное запоминающее устройство. К "полям адресов" он вообще никакого отношения не имеет и подразумевать их не может. Ну а поскольку память бывает не только оперативной, команд "ОЗУ-ОЗУ", вообще говоря, не существует, бывают команды "память-память" без конкретизации вида памяти. Так что, извините, но с терминологией у Вас явные проблемы.Наличие ПЗУ ничего не меняет. общее адресное пространство с системой ввода-вывода тоже. Адресация портов через пространство ОЗУ - типовое решение. Под термином ОЗУ в таком случае подразумевают полде адресов, а не конкретный сегмент памяти.
Одинаковая длина кода команды для любых команд -- одна из фундаментальных идей (наряду с отказом от сложных команд типа деления и от любых операций "память-память" и "память-регистр", не считая пересылки данных между памятью и регистрами), положенных в основу RISC. Благодаря одинаковой длине кода команды обеспечивается простая и быстрая выборка и декодирование команды. Правда, время показало несостоятельность самой концепции RISC-процессоров для серьёзных применений, поэтому от них идёт активный отход. У того же ARM от RISCа осталась невозможность работы с операндами прямо в памяти да название, все остальные черты они уже утратили.2. НЕ ВСЕГДА в RISC машинах команда занимает одно машинное слово. Далеко не всегда. Это вообще не признак RISC.
С чего Вы такое взяли? Всё это зависит от архитектуры, а зачастую и от особенностей конкретного контроллера. У ATmega 162, например, для доступа и к ОЗУ, и к флэш-памяти кода всегда применяются спарки регистров, ничего "строенного" там нет. Так что регистры могут быть спаренными, строенными или ещё какими, но они не обязаны быть таковыми. Так что Ваше утверждение неверно.3. Регистры косвенной адресации в гарвардских МК всегда спаренные. А при доступе к программной памяти, как памяти данных - вообще строенные.
Строго говоря, ничего не мешает... Кроме площади кристалла, а значит и цены. Именно цена и технологические возможности 90-х заставили Микрочип делать 12-разрядное базовое семейство, а позже удерживать архитектуру в совместимых вниз командах, но расширив разрядность до 14. И лишь в 18-х ПИКах изменения были значительными и разрядность увеличена до 16.FreshMan писал(а):возникает закономерный вопрос: а почему в PIC16F628A 14 разрядные команды ? что нам их мешает сделать 32 разрядными ???КРАМ писал(а):Чем длинее команда, тем больше она может адресовать памяти без выкрутасов типа страниц, банков и т.п.
такие системы существуют для FPGA и иже с ними. для микроконтроллеров существует не шибко популярная у нас, но используемая в некоторых учебных заведениях Украины программа Visual MCStudio украинского программиста Дмитрия Джулгакова. Для промышленных контроллеров такой принцип реализуют системы FBD-программирования, Дмитрий привнес этот подход в программирование для МК. Кстати, в этой системе имеется возможность программировать в стиле а-ля АлгоритмБилдер, то есть в виде алгоритмов, по которым автоматически генерируется код Си.FreshMan писал(а):интересно, а есть ли проги где в графическом виде можна бы заниматся програмированием........, ну типа из логических элементов и-не генераторов ,дешифраторов, счетчиков и т.д. и тому подобное я слаживаю определенную схему, компилирую и все.........., прошивай в МК и работай.............., чтобы не учить все эти языки, которые только отвлекают, а занятся творчеством напрямую![]()
![]()
Когда я создал первый проект для CPLD (не закончил, а именно создал, через file-create new), я обрадовался несказанно: все наглядно, красиво, вот тебе счетчик, вот тебе регистр, вот тебе логический элементик. Хочешь и-не? На! Хочешь мультиплексор? На!Мастер Ломастер писал(а):такие системы существуют для FPGA и иже с ними.
P.S. однако, учить языки и прочее все равно придется...
Естествено я переделывал прошивку перед изменением частоты.Soir писал(а):Ни разу не замечал. Переделал кучу проектов, частоту МК всегда использовал 4МГц и выше (до 20МГц).TRIOD писал(а):...Народ подскажите почему при симуляции работы DS18b20 в Протеусе если частота контролера выше 2Мгц то всегда идут неправильные показания. Цифра ровно в два раза больше цифры на дачике...
Частоту контроллера нельзя менять без изменения прошивки.
Давайте проект.
КРАМ, а зачем оскорблять то ??? Если человек чегото не знает это еще не повод для его оскорбления...!!! Поставте себя на мое место, вам бы это было по душе ....?КРАМ писал(а):Прямо Иванушка-дурачок
Да нет, такое поведение персонажа характерно скорее для Емели из "По щучьему велению".КРАМ писал(а): Иванушка-дурачок - это персонаж русских сказок. Собирательный образ лентяя и лежебоки мечтающего о чуде.