|
ARM7 (LPC17xx)+HDD |
|
|
|
Aug 28 2010, 11:52
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Если такое уже было - плиз тките ссылку.
Волею судьбы и непосредственного начальства, перешел ко мне проект ушедшего коллеги. Есть уже в общем, готовый девайс, даталоггер, на LPC1764, который в одном случае вводит сигнал с АЦП и пишет его на SD, в другом наоборот - воспроизводит ее с SD через свой ЦАП. 10 бит пока достаточно. В новое версии, коей мне придется заниматься, но (в смысле начальство) как обычно "желаю чтобы всё". Ну а конктерно пока 3 вещи: 1) замену SD на USB-флешку 2) Ethernet (оно где-то услышало слова "вебсервер и SNMP) 3) замену SD на HDD.
Проц, если надо (100% надо), будет заменен на другой, но из того же семейства 17хх.
И если первые два пункта я хотя бы в общих чертах представляю как делать (а в конкретных - буду задалбливать уважаемое общество своими дурацкими вопросами, но позже), то третий - я с полной непонятке. Переход на другой проц, за пределами этого семейства (LPC17xx) оно не разрешает. (Причины мне неизвестны.) Винты на сегоднешний день существуют (по интерфейсам) - SATA, PATA, (IDE) и USB.
USB-винт пока не рассматриваются, поскольку как я понимаю, это частный случай п.1 Собственно, тема с HDD возникла в первую очередь из-за возросших требований с обьему данных, пока хватало накопителя до 4гб, использовали SD, теперь речь идет как минимум от нескольких сотнях гигабайт. Плюс - несколько возрастают требования к скорости потока данных, предыдущий разработочик на SD не достиг новых требований. USB получается очень "на грани", но скорее всего тоже не успеет.
Реализовать SATA на LPC17xx мне возможным не представляется (если неправ - переубедите). PATA (IDE) - обычная параллельная шина, но поскольку в LPC17xx нет ни одного порта, в котором можно использовать биты 0-15 непрерывно, как шину данных, то придется работать через 8-битную шину, добавит пару внешних регистров.
Теперь собственно, вопросы:
1) буду раз услышать другой вариант, кроме как мултиплексированная 8/16 параллельная шина и эмуляция IDE. SATA-винт предполагается подключать через переходник IDE-SATA.
2) какой реальной скорости записи и чтения потока даных, можно ожидать в этом варианте? На сегоднешний день, задача в получении не более 2-3 мбайт/сек. Возможно ли это?
3) по программированию - может кто знает похожие реализации подключения IDE к микроконтроллеру? Интересуют команды т подпрограммы самого нижнего уровня.
4) NTFS нахалаву нет, так что FAT32, но как отформатировать 300-500 гю винт ? Винда не дает.
5) буду рад любой помощи.
|
|
|
|
|
 |
Ответов
|
Aug 30 2010, 15:06
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Цитата(dimka76 @ Aug 30 2010, 11:57)  http://elm-chan.org/fsw/ff/00index_e.htmlТам были примеры для работы с винчестером Спасибо, эту ссылку я знаю. Может есть еще какие? P.S. Напомните плиз про ограничения, я помню что ФАТ32 ограничено размером файла (4гб), а что с размером диска? Там, если мне память не изменяет, по LBA были какие-то ограничения. Я кое-что нашел в инете, но там рассматривают в основном ограничения. связанные с Int13 биоса и с виндой.
|
|
|
|
|
Aug 30 2010, 17:27
|

embarrassed systems engineer
    
Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038

|
Цитата(Allregia @ Aug 30 2010, 18:06)  P.S. Напомните плиз про ограничения, я помню что ФАТ32 ограничено размером файла (4гб), а что с размером диска? Там, если мне память не изменяет, по LBA были какие-то ограничения. Я кое-что нашел в инете, но там рассматривают в основном ограничения. связанные с Int13 Если ограничения собственно по самому ATA, то LBA48 поддержать обязательно, если хотите с современными винтами работать. Там несложно - описание в стандарте один небольшой подраздел занимает. Грубо говоря, в регистры номера сектора и дорожки теперь следует записывать не один байт, а два последовательно - и все значения стали 16-рарядными, таким образом расширяя адресацию секторов.
|
|
|
|
|
Aug 30 2010, 19:39
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Цитата(VslavX @ Aug 30 2010, 20:27)  Там несложно - описание в стандарте один небольшой подраздел занимает. Грубо говоря, в регистры номера сектора и дорожки теперь следует записывать не один байт, а два последовательно - и все значения стали 16-рарядными, таким образом расширяя адресацию секторов. Более-менее понятно, попробую еще погуглить, но на всякий случай -в ссылочку не ткнете? Пока я натыкаюсь на описание борьбы в этим в вин9х. Поправьте если я ошибаюсь: В старом варианте, LBA -28 bit, поэтому макс. размер диска при 512б секторе = 137438952960 =~127Gb (если считать что "гб"=1024*1024*1024) или 136гб если по 1000. При LBA48 - предел уже 131071 терабайт. В FatFS написано что Volume size: Depends on FAT specs. (upto 2T bytes on 512 bytes/sector) LBA там DWORD, получается 2^32*512=2047Gb, в самом деле. Для данной аппликации 2Т мне с головой хватит.
|
|
|
|
Сообщений в этой теме
Allregia ARM7 (LPC17xx)+HDD Aug 28 2010, 11:52 aaarrr Цитата(Allregia @ Aug 28 2010, 15:52) 1) ... Aug 28 2010, 21:24 Allregia Цитата(aaarrr @ Aug 29 2010, 00:24) High ... Aug 29 2010, 10:31 igorsk LPC17 это совсем не ARM7, если что Aug 29 2010, 01:14 Dron_Gus Для нормально работы PATA винта нужен контроллер с... Aug 30 2010, 06:57 Dir Цитата(Dron_Gus @ Aug 30 2010, 09:57) Для... Sep 1 2010, 06:38  zltigo QUOTE (Dir @ Sep 1 2010, 09:38) Драфт DS ... Sep 1 2010, 08:24    VslavX Цитата(Allregia @ Aug 30 2010, 22:39) Бол... Sep 1 2010, 09:51     Allregia Цитата(VslavX @ Sep 1 2010, 12:51) Собств... Sep 1 2010, 15:51 Altemir Мндаааа.... Начальство же у вас... У нас был девай... Aug 31 2010, 19:30 ukpyr Цитата1) замену SD на USB-флешкудля этого нужен US... Sep 1 2010, 05:54 MrYuran Цитата(ukpyr @ Sep 1 2010, 09:54) для это... Sep 1 2010, 06:00 Allregia Цитата(ukpyr @ Sep 1 2010, 08:54) для это... Sep 1 2010, 06:48 Konst_777 Цитата(Allregia @ Aug 28 2010, 14:52) ...... Sep 1 2010, 16:48 VslavX Цитата(Konst_777 @ Sep 1 2010, 19:48) Есл... Sep 1 2010, 17:09 Allregia Цитата(Konst_777 @ Sep 1 2010, 19:48) Есл... Sep 1 2010, 19:09
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|