реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Atmega88 - выжита по максимому, Множество Джулио
KP580BM80
сообщение Oct 3 2008, 04:50
Сообщение #31





Группа: Участник
Сообщений: 14
Регистрация: 27-06-08
Из: г. Челябинск, Россия
Пользователь №: 38 580



Цитата(Огурцов @ Oct 2 2008, 12:54) *
Это у i8080 делилась на 12, 0.8 MIPS, помнится, в результате было. А у Z80 простое тактирование и частота 4-6.5MHz, а у следующих еще больше, так что 1MIPS и даже несколько больше вполне получалось.
У i8080 частота кварца предварительно делится на 9 внешней ИМС тактового генератора. А из полученного значения считаются такты от 4 до 12 (или 13 не помню) на команду. В среднем получается существенно меньше чем 0.8 MIPS.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 06:35
Сообщение #32


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(Nick_Shl @ Oct 2 2008, 20:39) *
Если на один пиксель один такт минимум 18мГц частота должна быть.

Один пиксель на один такт. Длительность развертки - 32uS, при частоте кварца 20MHz - 640 пикселей, ровно. При 16 - 512. С обратным ходом, естественно, хоть он у мониторов довольно мал. Но таки обратие внимание на мои слова "примерно" и "около".

Цитата(Nick_Shl @ Oct 2 2008, 20:39) *
В реальности так не получится, да и частота повыше - есть ещё зоны обратного хода луча...

В реальности так и получается.


Цитата(SasaVitebsk @ Oct 2 2008, 21:47) *
Нет ну тут Огурцов имел ввиду по видимому с внешним контроллером видио. Ну и, соответственно с внешней памятью. На чём нибудь типа m8515.

Нет, Огурцов имел ввиду похожую же поделку на меге, на _одном_ проце, без каких либо дополнительных чипов. Но, естественно, с видеоусилителями (на транзисторах).


Цитата(KP580BM80 @ Oct 3 2008, 04:50) *
В среднем получается существенно меньше чем 0.8 MIPS.


Не понимаю, как считать "в среднем" ? Я беру корткую команду и считаю для нее. А для меги "в среднем" тоже не один мипс на мегагерц получается, так ведь ?

Цитата
Выполнение каждой команды производится микропроцессором в строго определенной последовательности действий, которая определяется кодом команды и синхронизируется сигналами Ф1 и Ф2 тактового генератора. Цикл команды - это время выполнения команды. За это время: команда выбирается из памяти, дешифрируется код команды, формируются управляющие сигналы для выполнения команды, завершается воздействие управляющих сигналов. Цикл команды разбивается на машинные циклы - это время, требуемое для обращения к памяти или к устройствам ввода - вывода. Цикл команды состоит из стольких машинных циклов, сколько обращений к памяти или к УВВ потребуется для выполнения этой команды. Команды этого микропроцессора могут содержать от 1 до 5 машинных циклов. В свою очередь каждый машинный цикл состоит из тактов - наименьший промежуток времени, необходимый для выполнения одного элементарного действия в микропроцессоре. Такт равен 1 периоду тактовых импульсов тактового генератора. Машинный цикл может состоять от 3 до 5 тактов. Первые три такта требуются для организации обмена с памятью, а второй и третий такты - для выполнения внутренних операций в микропроцессоре. Отсчет тактов ведется от положительных фронтов импульсной последовательности Ф1. При выполнении любой команды сначала считывается первый байт команды из памяти. Простые команды выполняются за один машинный цикл; сложные команды - за 5 машинных циклов с восемнадцатью тактами.

©
На 2.5MHz, один цикл и три такта - 0.833, четыре такта - 0.625 и т.д.
Go to the top of the page
 
+Quote Post
Nick_Shl
сообщение Oct 3 2008, 07:17
Сообщение #33


Участник
*

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850



Цитата(Огурцов @ Oct 3 2008, 09:35) *
Один пиксель на один такт. Длительность развертки - 32uS, при частоте кварца 20MHz - 640 пикселей, ровно. При 16 - 512. С обратным ходом, естественно, хоть он у мониторов довольно мал. Но таки обратие внимание на мои слова "примерно" и "около".
Не согласен с утверждением "Один пиксель на один такт". Кроме загрузки из памяти в регистр, ещё нужен цикл и инкремент указателя...
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 07:28
Сообщение #34


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(Nick_Shl @ Oct 3 2008, 07:17) *
Кроме загрузки из памяти в регистр, ещё нужен цикл и инкремент указателя...

Так люди разные - кому-то еще си для того же самого потребуется. А в результате задачка не будет решена и на 200MHz ARMе.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Oct 3 2008, 07:44
Сообщение #35


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Чтоб зазря не спорить, предлагаю соц. соревнование: кто больше буквовков разных на экране написать сможет. Чтобы какая-то практическая ценность была - пусть это будет терминал.
То есть кидаем в УАРТ строки символов (допустим, на 9600) и видим их на экране. Можно ещё клаву подцепить PS/2 и тогда полноценный терминал получается.

Что скажете?

PS: (по поводу арм/линукс/тфт и прочая)
вспомнил разговор двух начальников секторов. Один заведовал отображением радиолокационной информации на экране монитора. Вроде ничего особенного - по чёрному экрану кругами гуляет луч, из-под него выскакивают обнаруженные цели, на них там буковки/циферки, при подведении курсора более подробная информация. Ну и попутно менюшки, панельки и прочая лабуда.

И вот другой начальник этому говорит: а помнишь, мол, денди? 8 бит, считанные мегагерцы, памяти никакой, программы по нескольку килобайт, а вон какую красоту рисовали. А ты типа имеешь 486 процессор, много всяких ресурсов, линукс какой-то ещё туда суёшь и всё мало...

А второй знаете что ответил? Зато, говорит, я один раз сейчас разработаю систему, а потом буду просто рюшечки править. И не зависеть от программистов, которые каждые 2 года меняются. И не разрабатывать всё заново каждый раз.

По-моему, он прав.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Nick_Shl
сообщение Oct 3 2008, 07:54
Сообщение #36


Участник
*

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850



Цитата(Огурцов @ Oct 3 2008, 10:28) *
Так люди разные - кому-то еще си для того же самого потребуется. А в результате задачка не будет решена и на 200MHz ARMе.
Можно и Си. Нынче компиляторы достаточно хорошо оптимизируют. Вообще предлагаю не развивать тут тему Си vs. ASM.
ARM всетаки не CISC, потому сомневаюсь, что у него есть команда загрузки в порт данных размещённых по адресу в регистре с инкрементом этого регистра выполняющаяся за 1 такт. Но даже если и есть - необходим фреймбуфер - 640*480 = 307200. Или 300кБ. А его нет.
Если делать текстовый режим - то дополнительные вычисления обязательно потребуются.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 08:28
Сообщение #37


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(MrYuran @ Oct 3 2008, 07:44) *
Можно ещё клаву подцепить PS/2

И мышь ?
Вот, порылся в мусоре, это про что я говорю
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Oct 3 2008, 08:34
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(Огурцов @ Oct 3 2008, 09:35) *
На 2.5MHz, один цикл и три такта - 0.833, четыре такта - 0.625 и т.д.

bb-offtopic.gif
Берём Алексенко.
"В настоящее время партия и правительство уделяют..." smile.gif
Итак
КР580ИК80 - макс 2МГц, ИК80А - 2.5МГц.
Минимальная команда 4 такта (регистр в регистр) - максимальная 18.
2.5/4 = 0.625 Мипс пиковая.

Утверждение с делителем на 9 обоснованное. Так как редко применялся данный МП без тактового генератора i8024. Причина в том, что там вормировалось 2 фазы с разным сдвигом и размахом 12V. i8024 (КР580ГФ24) предусматривал подключение кварца и делил его на 9.

2.5*9 = 22.5. Никогда не встречал. Найболее распространённым был кварц 18.432 который при делении на 9 давал 2.048 при этом и получалось 0.5 мипса пиковых.

Появление первой i8051 с её 1 мипсом произвело, как помню в наших рядах настоящий фурор. smile.gif
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 08:46
Сообщение #39


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(MrYuran @ Oct 3 2008, 07:44) *
По-моему, он прав.

Правильно. Меги сегодня уже, похоже, умерли - 32-битники делают их во все щели. А покупка атмела микрочипом, если произойдет - будет последний гвоздь в крышку гроба.
За сим славное поколение эмбеддеров будет мутировать в сторону линуксов/микрософтов. И ничего не будет "не выжимать". Ну если только опять из спортивного интереса )))


Цитата(SasaVitebsk @ Oct 3 2008, 08:34) *
Минимальная команда 4 такта

Хорошо, если Вы уверены, что минимальная не 3 а 4 такта, как я привел в цитате выше, то я спорить не буду - практически уже ничего нет из той литературы, а точную растактовку на пямять я сейчас не скажу даже под пыткой.
Go to the top of the page
 
+Quote Post
slog
сообщение Oct 3 2008, 08:54
Сообщение #40


Знающий
****

Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489



Кажется уже многие забыли что такое текстовый режим.
Для вывода на экран текста в 640*480 не нужен буфер в 300кбайт. Достаточно 2-3кб + знакогенератор во флэш. Да и даже некоторую графику можно без буфера рисовать. На лету.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 09:05
Сообщение #41


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(slog @ Oct 3 2008, 08:54) *
Кажется уже многие забыли что такое текстовый режим.

Скорее, еще не знают )
Go to the top of the page
 
+Quote Post
otrog
сообщение Oct 3 2008, 09:16
Сообщение #42


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 22-02-06
Из: Воронеж
Пользователь №: 14 589



Цитата(MrYuran @ Oct 3 2008, 11:44) *
Чтоб зазря не спорить, предлагаю соц. соревнование: кто больше буквовков разных на экране написать сможет. Чтобы какая-то практическая ценность была - пусть это будет терминал.
То есть кидаем в УАРТ строки символов (допустим, на 9600) и видим их на экране. Можно ещё клаву подцепить PS/2 и тогда полноценный терминал получается.

Что скажете?

Такая штука уже есть http://www.serasidis.gr/circuits/AVR_VGA/avr_vga.htm


--------------------
Истина рождается в спорах; но когда страсти кипят, истина испаряется.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Oct 3 2008, 09:20
Сообщение #43


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(otrog @ Oct 3 2008, 13:16) *
Такая штука уже есть http://www.serasidis.gr/circuits/AVR_VGA/avr_vga.htm

Это я видал
Цитата
Video terminal: Quantity of symbols: 20 lines by 38 characters.
The resolution of an individual character matrix: 8x12 points

Вопрос - кто больше?


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
LCD
сообщение Oct 3 2008, 09:27
Сообщение #44


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 1-06-08
Пользователь №: 37 959



Цитата(lock @ Oct 2 2008, 09:03) *
1к озу, 8к флэш - парень выдает на экран Множество Джулио!
http://www.linusakesson.net/scene/craft/index.php
в приложении исходники, по ссылке еще и видео!
Просто шокирует!

Боян! smile.gif Хотя, меня когда-то если не шокировало, то удивило.
Цитата(gormih @ Oct 2 2008, 12:56) *
Правда не стоит забывать, что у спектрума вывод на экран был сделан аппаратно... Тут же по видимому вывод на экран через перерывание таймера, из буфера.

Аппаратно, но через известное место: сам экран (256х192) разбит на 3 части по 64 строки, каждая строка в которой чередуется через 7 других строк. И для вывода цветного изображения надо было выбирать два цвета на знакоместо (8х8) из палитры в 16 цветов.
Цитата(Огурцов @ Oct 2 2008, 14:59) *
Спектрумы были разные. В моем (точнее в одном из, который был дольше всего) было 4MHz, при 16MHz тактовой.

Для большей совместимости там должен стоять кварц на 14 МГц, а на CPU через делитель подается 3,5 МГц.
P.S. Кажется, в форуме иногда появляется Кирилл Фролов (а может, и другие спектрумисты), он знает практически все об архитектуре спектрума.

Сообщение отредактировал LCD - Oct 3 2008, 09:29
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 3 2008, 10:08
Сообщение #45


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(MrYuran @ Oct 3 2008, 09:20) *
Это я видал

Черно-белый, как первый телевизор )

Цитата(MrYuran @ Oct 3 2008, 09:20) *
Вопрос - кто больше?

Не вопрос - этот человек - я(с) )))
На 16MHz получилось 32 символа на 20 строк, знакоместо - 13 на 20 линий
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 17:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01485 секунд с 7
ELECTRONIX ©2004-2016