|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
FDD-контроллер для NedoPC
Author |
Message |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22523 Location: Silicon Valley
|
Вот и фотки подоспели:
Вот контроллер от Агата. Широкие микрухи с надписями белой краской - ПЗУшки РТ5, похожие на них, но без пометок - к155ИР13, самые большие - КР580ВВ55А. Синий разъём - к дисководу.
А вот от IBM PC/XT. На ней ПЗУ 2764, контроллер i8272А, парочка ИМС программируемой логики PAL16xxx и остальные - обычная логика 74LSxxx.
|
24 May 2006 16:22 |
|
|
Ball Bess
Maniac
Joined: 14 Mar 2006 00:20 Posts: 211 Location: Иркутск
|
Говоря о 765-м чипе, я, конечно, малость внёс путаницу. Надо было употреблять более строгие и правильные названия. Программист может называть 765-м очень многие микрухи, потому что с его точки зрения это - одно и то же. А с точки зрения конструктора NEC'овский uPD765a (i8272) - это одно, а WD37C65 - другое. Контроллер на первом вы видите на фото. А во второй уже запихнули всё содержимое изображённой на фотке платы, но с точки зрения программиста при этом ничего не изменилось. Более того, с точки зрения ISA шины тоже ничего не изменилось. Мы можем убрать с этой карточки i8272a со всей обвязкой, поставить 37C65, и это будет та же карточка. Детально я все типы микрух не изучал, знаю только что интеграция нарастала, но ядро NEC'овского 765-го чипа оставалось, чтобы не нарушилась совместимость. Ещё на мультикартах 286/386-х машин появился гибрид контроллера дисковода с UART'ами (например микруха "Goldstar Prime 2c"), а в 486-х и "Пентиумных" материнках контроллер флопа и вовсе погрузился в большущие чипы с сотнями ног.
Если где-то говорят, что вот есть мультикарта под ISA-16, которая поддерживает только FDD и HDD (без UART), то почти 100%, что она и есть на одночиповом контроллере FDD. А для IDE-винта эта карточка вообще никакой аппаратной поддержки не несёт, являясь просто переходником. Максимум - буфер может быть, чтобы IDE шлейф не создавал лишней нагрузки на шину ISA. Поэтому, если соорудить эмуляцию ISA - шины, то уже всё равно, что там за чип на мультикарте, то ли WD37C65, то ли ещё какой, о совместимости чипов уже позаботились разработчики карточки, главное - что мультикарта для ISA.
Правильно jdigreze заметил:
Отсюда вывод - не торопитесь добывать именно определённые микрухи, пока не разобрались, что же мы хотим соорудить. Я собирался попытаться просто пристыковать микруху WD37C65 к недопц и попробовать, как они будут взаимодействовать в программном режиме. Эмуляция ISA-8 - это уже нечто другое, а ISA-16 - третье. Надо ли нам это - вопрос для обсуждения.
Да, вот тут я упомянул про "программный" режим. Поясню. Ещё одно весьма существенное обстоятельство, имеющее отношение к обсуждаемому вопросу - это то, что общение с дисководом (даже не напрямую, а через контроллер FDD) требует от хоста некоего минимума вычислительной мощности, чтобы успевать принимать/выдавать байты и складывать в ОЗУ(брать из ОЗУ). Диск крутится 300 об/мин и ждать не может. Слабый CPU может даже не справиться или всё будет, как сказал HWM, "на пределе". Сам контроллер позволяет два режима - программный и DMA. В IBM PC юзается DMA. Вот надобно бы прикинуть, а может ли 85-й проц программно читать/писать сектора и насколько легко, если может.
_________________ Кто мешает тебе выдумать порох непромокаемый?
Last edited by Ball Bess on 24 May 2006 19:02, edited 1 time in total.
|
24 May 2006 17:42 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22523 Location: Silicon Valley
|
Спасибо за разъяснения!
Пример ISA-карточки я привёл потому что это единственный пока для меня вариант приобрести чип (так и не смог раскопать чего в этой карточке стоит, но судя по фотке - это один единственный чип).
P.S. Нашёл вариант ISA контроллера подешевле - всего за $7!
http://jameco.com/webapp/wcs/stores/ser ... tId=206316
http://www.elhvb.com/iocard/tdnservices/ca8390.jpg
|
24 May 2006 18:34 |
|
|
Ball Bess
Maniac
Joined: 14 Mar 2006 00:20 Posts: 211 Location: Иркутск
|
Если бы у нас столько стоил старый хлам - я бы немедленно схватил все свои ящики и бросился на базар, продавать
А насчёт эмуляции ISA, я понимаю, что это просто пока предложение для обсуждения, но оно как, с идеологией дружит ? Не начнём из НедоПЦ ещё один ПЦ делать?
_________________ Кто мешает тебе выдумать порох непромокаемый?
|
24 May 2006 18:50 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22523 Location: Silicon Valley
|
Дык этот хлам вроде как и не старый. В смысле не юзанный
По поводу ISA - есть огромный соблазн заюзать некоторое старьё в NedoPC как то модемы, сетевые карты, контроллеры интерфейсов и т.д.
Например внешний интерфейс памяти PIC17C44 является 16-битным - почему бы не поддержать (хотя бы частично) стандарт ISA-16?
|
24 May 2006 18:56 |
|
|
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
Может лучше всетаки ARM с внешней шиной ? У ATMELовских АРМов внешняя шина 16бит, внутри он 32х битный. А главное - С на АРМ оптимизируется лучше чем на ПИК.
Правда по цене не знаю... АРМ- около 10 доллАров у нас стоит. Впрочем доллар постоянно падает, что не может не радовать
|
24 May 2006 19:17 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22523 Location: Silicon Valley
|
По поводу армов у меня пока сложилось предубеждение, что они сугубо антилюбительские девайсы...
Да нет же - он уже неделю как растёт, а падают российские ценные бумаги - но это уже оффтоп
|
24 May 2006 19:21 |
|
|
Ball Bess
Maniac
Joined: 14 Mar 2006 00:20 Posts: 211 Location: Иркутск
|
Ну, появись шина, сразу найдётся, что туда воткнуть. Но тогда её эмуляция - это отдельная задача, напрямую с FDD и не связанная. Как она может выглядеть аппаратно - отдельный вопрос (для отдельной темы). Можно обсуждать.
По FDD на 765-м чипе сейчас ближайшая задача, как оно мне представляется - выяснить, можно ли обойтись без DMA, справится ли проц самостоятельно. Хотелось бы "хай денсити" (500 кбит/сек), если не получится, то может с "дабл денсити" справится (250 кбит/с). При этом сохраняется максимальная аппаратная простота. Если он этого не сможет, то тогда ему нужна помощь (то ли DMA-контроллер, то ли MCU, обслуживющий дисковую подсистему, то ли ещё что, вариации разные могут быть, но чем сложнее, тем меньше вероятность, что всё это выйдет из стадии обсуждений на практический уровень).
_________________ Кто мешает тебе выдумать порох непромокаемый?
|
24 May 2006 19:26 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22523 Location: Silicon Valley
|
| | | | Ball Bess wrote: Ну, появись шина, сразу найдётся, что туда воткнуть. Но тогда её эмуляция - это отдельная задача, напрямую с FDD и не связанная. Как она может выглядеть аппаратно - отдельный вопрос (для отдельной темы). Можно обсуждать. По FDD на 765-м чипе сейчас ближайшая задача, как оно мне представляется - выяснить, можно ли обойтись без DMA, справится ли проц самостоятельно. Хотелось бы "хай денсити" (500 кбит/сек), если не получится, то может с "дабл денсити" справится (250 кбит/с). При этом сохраняется максимальная аппаратная простота. Если он этого не сможет, то тогда ему нужна помощь (то ли DMA-контроллер, то ли MCU, обслуживющий дисковую подсистему, то ли ещё что, вариации разные могут быть, но чем сложнее, тем меньше вероятность, что всё это выйдет из стадии обсуждений на практический уровень). | | | | |
Специальный микроконтроллер, обслуживающий контроллер дисков, мне кажется вполне разумным решением
|
24 May 2006 19:33 |
|
|
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
500Кбит/сек даже старенький MCS51 программно осилит. Тем более что сектора обычно не более 512 байт. Даже FAT12/16 можно поддержать аппаратно. Мне вот интересно, почему разработчики PC так и не сделали полностью буферированный флопоконтроллер... А то как в анекдоте про многозадачность...
|
24 May 2006 19:46 |
|
|
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
|
24 May 2006 20:53 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
Между прочим, у Ориона и Специалиста сектора 5х1024 байт, у Спектрума - 16х128 байт, M$ выбрала 9х512 байт. А контроллер поддерживает сетку: 128/256/512/1024 байт. Так что все-таки надо до килобайта держать. Далее, если МК сможет программно перекидывать в/из флоповод/а в свой буфер хотя-бы один сектор (в идеале целую дорожку, чтобы можно было аппаратно форматировать), то все будет пучком, т.к. флаг BUSY есть для этого. Все винты уже давно как так делают.
|
24 May 2006 20:54 |
|
|
Ball Bess
Maniac
Joined: 14 Mar 2006 00:20 Posts: 211 Location: Иркутск
|
А на что тут размер секторов влияет? В смысле нагрузки на проц. Главное, чтобы во время обработки сектора темп выдерживать, успевать к очередному байту, а длинный сектор или короткий...
Устанет проц, на перекур запросится?
Или это уже речь о поддержке посредством MCU? Что, типа, на размер буфера влияет? Так буфер дорожки - самое то.
_________________ Кто мешает тебе выдумать порох непромокаемый?
|
24 May 2006 21:10 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Всегда было 256 байт на сектор.
Фактически в MS-DOS сектор может быть до 2048 байт.
_________________ Extreme Entertainment
|
24 May 2006 22:18 |
|
|
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
У iS-DOS тоже 5х1024. Но это не принципиально. Т.е. если делать РАМу в размер трека, то получится не больше 16К. Кстати, для форматирования такого объема и не надо, там данные можно паковать в стиле "байт/кол-во", все влезет и в пару-тройку Кб.
Собственно говоря, размер сектора влияет только на кол-во необходимой оперативки. А темп держать по прерываниям не так и сложно. Тут недалеко я выкладывал исходник программного анализа i2c на at89c2051, при кварце 11059,2кГц скорость была, если не забыл, около 40Кбайт/сек получилась. Так там анализ последовательной шины в реалтайме. Здесь гораздо проще.Если в качестве контроллера использовать mega8515 с внешней РАМой, то обработать поток из Z0765 будет не проблема.
|
24 May 2006 22:36 |
|
|
Who is online |
Users browsing this forum: No registered users and 13 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|