4 АП17 плюс прочая логика, большая схема получается :(
Вид для печати
4 АП17 плюс прочая логика, большая схема получается :(
Так вроде были нужны регистры ...?
Две мс вроде хватит ...
CPLD ?? Причем логику нормальную можно сделать и 1 микруха за 3-5$ если какую нить EPM3064. В ней 64 тригера то есть можно в принципе регистры секторой дорожек разместить в ней, и управлять ими как нить укорочено,
к примеру со стороны мелкоконтолера
000 - idle
001 - Запись номера дорожки из мелкоконтролера
010 - Запись номера сектора из мелкоконтолера
100 - Номер сектора ++
101 - Номер сектора --
110 - Номер дорожки ++
111 - Номер дорожки --
Или что то в этом духе, в том смылсе что не нада постоянно формировать стробирующие сигналы и данные для записи в эти замые регистры
Добавлено через 12 часов 32 минуты
Во еще немаловажно
логика DRQ красиво ложиться в CPLD и прозрачно и гармонично будет работать с МК
к прмеру CPLD отлавила что подана команда записи сектора, она по логике WD1793 сразу выставляет DRQ требуя данные, после того как проц запишет их в регистр данных, CPLD снимает DRQ и посылает IRQ мелконтролеру, как только он их прочитал из регистра DRQ опять ввзводиться. С чтением таже ситуация но в обратную сторону. Причем микроконтролеру ваще париться с этой траблой не нада, так же CPLD биты занятости, ошибки может показывать и ваще раскладку регистра статуса в зависимости от поданной команды, что опять же разгрузит МК, также стоит расмотреть возможность отсеивания от МК в случае занятости всех команд кроме прерывания.
А ваще адресуемый PSP помогает только при записи в порты, а со чтением от него толку мало всеравно на прерывания цепляться прийдется, да и при записи тож прерывания нада, хотя бы что бы DRQ логику отрабатывать, короче от него пользы мож на пару трешку команд МК экономии.
"А ваще адресуемый PSP помогает только при записи в порты, а со чтением от него толку мало всеравно на прерывания цепляться прийдется, да и при записи тож прерывания нада, хотя бы что бы DRQ логику отрабатывать, короче от него пользы мож на пару трешку команд МК экономии."
Ну во-первых, 16 мипсов вместо 10 у PIC18, это уже само по себе сильно помогает ;) Во-вторых мипсы 24-ого значительно мипсее 18-ого (чтобы сохранить регистр при записи нужно 62 нс вместо 200) и даже если применять подход, который я предложил выше для PIC18, то и без адресного PSP 24-ый справится и, возможно, даже в турбе.
А если кому мало, то можно вместо PIC24FJ взять PIC24FH, которые работают на 80МГц и, соответственно, имеют производительность 40МИПС :)
А заодно между делом на этом же ПИКе заэмулить Z80 :D
А адресуемый PSP, думаю, лучше использовать - раз есть такая приятная железка, то почему бы ей не воспользоваться?
Единственное, на мой взгляд, неудобство использования PIC24 - питание оного от 3.3v. Но согласовать уровни легко, так что это не проблема.
А что там согласовывать, на вход он и 5 в съест, разрешено. А на выход шина и так подтянута к 5 в.
Согласен, входы толерантны к 5в, выходы можно сделать вообще с ОК. Но если использовать (если использовать, конечно!) PSP, то как в этом режиме будут работать выходы - не знаю, нужно курить даташит. Впрочем, думать об этом нужно, только если использовать PIC24. Я-то не очень думаю о согласовании, поскольку буду цеплять не к "Пентагону" или чему-то подобному, а к DE1, с которой проблем согласования не будет :)
Да, это наверное самые большие проблеммы....
А ваще про пипсологию что бы немного подзадумались.
Допустим PIC24 дает нам полные 40MIPS то на 1 такт процессора исполняется всего лиш 11 команд, а за 2 тата за которые нада обычно сообразить мы всего 22 команды успеваем.
А если учесть что это самые узкие места, забитые ветвлениями и проверками....
К тому же в общем мелкконтролер справляется со своими задачами но ему не зхатает место в той части, где мелкаконтролер, мягко говоря не совсем оптимален.
В то же самое время CPLD может оень многое на себя взять и чисто оринтироваться по данным и командам от проца и ответам от мелкоконтролера, без всяких вайтов.
Кто бы еще этот CPLD сделал... ;) Самое узкое место - это диалог с шиной, который PIC24 делает аппаратно. Не думаю что здесь могут быть какие-то проблемы. А вот согласование шин - это бяка, я нашел три микрухи, которые могли бы помочь, но их не вижу в наличии ни в Росиии, ни тем более в КЗ.
SN74ALVC164245 - 2 x 8 буферов шины с Z-состоянием и сигналом направления 5В/3.3В.
Такие же устройства производятся фирмами IDT, Philips и др. Классика жанра.
ADG3300 - 8-канальный TVC с расширенным диапазоном (от 1.15В до 5.5В)
в миниатюрном корпусе TSSOP. Его преимущества - в доступности.
SN74CBTD16211 - 24-канальный TVC 5В/3.3В
Добавлено через 1 час 33 минуты
Нашел 74ALVC164245 в TTSOP-48, мелкая зараза...