nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 16:25



Reply to topic  [ 60 posts ]  Go to page 1, 2, 3, 4  Next
Создание прошивки для GAL22V10 вручную... 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Решил создать прошивку для GAL22V10 не прибегая к помощи разнообразных средств разработки, а именно - вручную. Берём страницу даташита где изображена картинка внутреннего устройства (DIP Package Pinouts), берём ручку и обозначаем те места, где должны остаться перемычки... :roll:

_________________
:dj: https://mastodon.social/@Shaos


Last edited by Shaos on 08 Dec 2007 20:17, edited 1 time in total.



07 Dec 2007 21:30
Profile WWW
Fanat

Joined: 16 May 2007 01:01
Posts: 93
Location: 212.5.73.205
Reply with quote
Shaos wrote:
Решил создать прошивку для GAL22V10 не прибегая к помощи разнообразных средств разработки, а именно - вручную. Берём страницу даташита где изображена картинка внутреннего устройства (DIP Package Pinouts), берём ручку и обозначаем те места, где должны остаться перемычки... :roll:

А дальше???? Берём иголочку с ниткой и прошиваем на картинке обозначенные места????...Так, как дальше то, например, счетчик собрать, как это вручную сделать???


08 Dec 2007 03:24
Profile
Banned
User avatar

Joined: 20 Mar 2005 13:41
Posts: 2141
Location: От туда
Reply with quote
Rokl wrote:
Shaos wrote:
Решил создать прошивку для GAL22V10 не прибегая к помощи разнообразных средств разработки, а именно - вручную. Берём страницу даташита где изображена картинка внутреннего устройства (DIP Package Pinouts), берём ручку и обозначаем те места, где должны остаться перемычки... :roll:

А дальше???? Берём иголочку с ниткой и прошиваем на картинке обозначенные места????...Так, как дальше то, например, счетчик собрать, как это вручную сделать???

Надо вышивать крестиком.


08 Dec 2007 06:11
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Rokl wrote:
Shaos wrote:
Решил создать прошивку для GAL22V10 не прибегая к помощи разнообразных средств разработки, а именно - вручную. Берём страницу даташита где изображена картинка внутреннего устройства (DIP Package Pinouts), берём ручку и обозначаем те места, где должны остаться перемычки... :roll:

А дальше???? Берём иголочку с ниткой и прошиваем на картинке обозначенные места????...Так, как дальше то, например, счетчик собрать, как это вручную сделать???


А дальше пишем в текстовом редакторе .jed файл и шьём любым GAL-совместимым программатором ;)

_________________
:dj: https://mastodon.social/@Shaos


08 Dec 2007 07:13
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Минимальный формат JEDEC (без тестовых векторов), необходимый для прошивки GAL22V10 (аналогично и для других перепрограммируемых микросхем с открытой архитектурой), до безобразия прост - основной текст находится между двумя символами - '\x02' и '\x03', обозначающими начало и конец сообщения, между ними располагаются команды, разделённые звёздочками (далее свои комментарии по тексту пишу после трёх минусов --- их в тексте файла .jed не должно быть):

здесь произвольный текст
.--- тут должен быть символ '\x02'
GAL22V10*QP24*QF5892* --- некий текст, далее количество ног у микросхемы (после QP) и количество перепрограммируемых перемычек (после QF)
G0*F0* --- секьюрный бит (после G) и состояние перемычек по умолчанию (после F, обычно 0 - нетронуто)
N note* --- комментарии пишутся после символа N
L0000 11111111011111111111111111111101111111111111* --- список прожигаемых (1) и оставляемых (0) перемычек, непосредственно после L пишется номер первой перемычки в этой строке (тут 0)
L0044 11111111110111111101111111110111111111111111* --- списков может быть несколько (в этой строке адрес первой перемычки - 44)
C5C65* --- после буквы C идёт шестнадцатиричное представление 16-битной контрольной суммы прошивки (сумма байтов, составленных из битов-перемычек)
. --- тут должен быть символ '\x03'
0000 --- шестнадцатиричная контрольная сумма текстового сообщения (вместе с переводами строк и т.д.), однако допустимо использовать 0000 в качестве признака игнориования контрольной суммы сообщения.

Краткое описание составлено вот по этому тексту: http://ftp.dataio.com/appnotes/jedec2.txt

_________________
:dj: https://mastodon.social/@Shaos


08 Dec 2007 14:16
Profile WWW
Doomed

Joined: 18 Feb 2007 11:40
Posts: 408
Reply with quote
Post 
А кто-нибудь у нас в России использует GAL-ы? Есть вообще желание их пощупать? ;)


14 Dec 2007 07:05
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Different wrote:
А кто-нибудь у нас в России использует GAL-ы? Есть вообще желание их пощупать? ;)


В России есть ATF-ы, а вариант ispGAL вряд ли кому интересен из-за дороговизны и засекреченности...

_________________
:dj: https://mastodon.social/@Shaos


14 Dec 2007 08:09
Profile WWW
Fanat

Joined: 02 Oct 2007 02:25
Posts: 73
Location: 78.108.67.186
Reply with quote
Post 
Different wrote:
А кто-нибудь у нас в России использует GAL-ы? Есть вообще желание их пощупать? ;)

Использовали и в России, и выглядело это, что то, типа, так :
; INPUTS
pin 1 meandr
pin 2 cikl
pin 3 stabil
pin 4 p0
pin 5 p1
pin 6 p2
pin 7 busy
pin 8 strti ; ПУСК - нефиксируемая кнопка.
pin 9 stopi ; СТОП - кнопка.
pin 10 in1 ; Концевик заслонки 1 разгрузки бункера.
pin 11 in2 ; Концевик заслонки 2 загрузки бункера.
pin 13 run
; OUTPUTS
pin 14 strreg regfbk
pin 15 stop regfbk
pin 16 strt regfbk
pin 17 tare regfbk
pin 18 out6 regfbk ; out6 Подхват кнопки "Пуск"
pin 19 doza_ok regfbk ; out5 "Доза набрана"-Разгрузка заслонка 1
pin 20 null regfbk ; out4 "Ноль"
pin 21 fine regfbk ; out3 питатель "Точно"
pin 22 gross regfbk ; out2 питатель "Грубо"
pin 23 load regfbk ; out1 "Загруз" заслонка 2

EQUATIONS

; Имеется накопительный бункер, из которого заслонкой или шнековыми питателями
;материал подается в весовой бункер
; после замыкания кнопки "Пуск" и при отпущенной кнопке "Стоп" и при замкнутых концевиках
; на заслонках разгрузки-выгрузки весового бункера
; Цикл "загрузка-разгрузка" продолжается непрерывно при замкнутой кнопке "Пуск",
; пока не будет нажата кнопка "Стоп".

/strreg.d := ( /strt + /stop + /strreg ) * busy * run
/null.d := /p0 * /p1 * /p2 * run
/out6.d := /strti * /null * /cikl * stopi * /in1 * /in2 * run
+ /out6 * /cikl * stopi * /in1 * /in2 * doza_ok * run
/strt.d := /out6 * /null * /in1 * /in2 * /cikl * stabil * doza_ok * strreg * run
/gross.d := /null * cikl * stopi * /in1 * strreg * doza_ok * run
+ /gross * /p1 * /p2 * /in1 * cikl * doza_ok * run
/fine.d := p0 * p1 * /p2 * gross * cikl * stopi * /in1 * strreg * doza_ok * run
+ /fine * p0 * /p2 * /in1 * cikl * doza_ok * run
/tare.d := /out6 * /null * /in1 * /in2 * /cikl * stabil * doza_ok * strreg * run
/load.d := /null * stopi * doza_ok * cikl * strreg * /in1 * /in2 * run
+ /p2 * /load * doza_ok * cikl * /in1 * in2 * run
/stop.d := p0 * p1 * p2 * load * doza_ok * cikl * stabil * strreg * run
+ /stopi * strreg * run
+ in1 * load * cikl * strreg * run
/doza_ok.d := p0 * p1 * p2 */in2 * /cikl * load * run
+/doza_ok * /cikl * p0 * run

strreg.trst = run doza_ok.trst = run
strt.trst = run out6.trst = run
stop.trst = run tare.trst = run
load.trst = run null.trst = run


14 Dec 2007 09:31
Profile
Doomed

Joined: 18 Feb 2007 11:40
Posts: 408
Reply with quote
Post 
Shaos wrote:
В России есть ATF-ы, а вариант ispGAL вряд ли кому интересен из-за дороговизны и засекреченности...

ATF-ы медленнее, а по ценам практически одинаковые.
И насчет секретности сомневаюсь.


14 Dec 2007 11:24
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
AlexM wrote:
Different wrote:
А кто-нибудь у нас в России использует GAL-ы? Есть вообще желание их пощупать? ;)

Использовали и в России, и выглядело это, что то, типа, так :
; INPUTS
pin 1 meandr
pin 2 cikl
pin 3 stabil
pin 4 p0
pin 5 p1
pin 6 p2
pin 7 busy
pin 8 strti ; ПУСК - нефиксируемая кнопка.
pin 9 stopi ; СТОП - кнопка.
pin 10 in1 ; Концевик заслонки 1 разгрузки бункера.
pin 11 in2 ; Концевик заслонки 2 загрузки бункера.
pin 13 run
; OUTPUTS
pin 14 strreg regfbk
pin 15 stop regfbk
pin 16 strt regfbk
pin 17 tare regfbk
pin 18 out6 regfbk ; out6 Подхват кнопки "Пуск"
pin 19 doza_ok regfbk ; out5 "Доза набрана"-Разгрузка заслонка 1
pin 20 null regfbk ; out4 "Ноль"
pin 21 fine regfbk ; out3 питатель "Точно"
pin 22 gross regfbk ; out2 питатель "Грубо"
pin 23 load regfbk ; out1 "Загруз" заслонка 2

EQUATIONS

; Имеется накопительный бункер, из которого заслонкой или шнековыми питателями
;материал подается в весовой бункер
; после замыкания кнопки "Пуск" и при отпущенной кнопке "Стоп" и при замкнутых концевиках
; на заслонках разгрузки-выгрузки весового бункера
; Цикл "загрузка-разгрузка" продолжается непрерывно при замкнутой кнопке "Пуск",
; пока не будет нажата кнопка "Стоп".

/strreg.d := ( /strt + /stop + /strreg ) * busy * run
/null.d := /p0 * /p1 * /p2 * run
/out6.d := /strti * /null * /cikl * stopi * /in1 * /in2 * run
+ /out6 * /cikl * stopi * /in1 * /in2 * doza_ok * run
/strt.d := /out6 * /null * /in1 * /in2 * /cikl * stabil * doza_ok * strreg * run
/gross.d := /null * cikl * stopi * /in1 * strreg * doza_ok * run
+ /gross * /p1 * /p2 * /in1 * cikl * doza_ok * run
/fine.d := p0 * p1 * /p2 * gross * cikl * stopi * /in1 * strreg * doza_ok * run
+ /fine * p0 * /p2 * /in1 * cikl * doza_ok * run
/tare.d := /out6 * /null * /in1 * /in2 * /cikl * stabil * doza_ok * strreg * run
/load.d := /null * stopi * doza_ok * cikl * strreg * /in1 * /in2 * run
+ /p2 * /load * doza_ok * cikl * /in1 * in2 * run
/stop.d := p0 * p1 * p2 * load * doza_ok * cikl * stabil * strreg * run
+ /stopi * strreg * run
+ in1 * load * cikl * strreg * run
/doza_ok.d := p0 * p1 * p2 */in2 * /cikl * load * run
+/doza_ok * /cikl * p0 * run

strreg.trst = run doza_ok.trst = run
strt.trst = run out6.trst = run
stop.trst = run tare.trst = run
load.trst = run null.trst = run


это чтоли PALASM? ;)

_________________
:dj: https://mastodon.social/@Shaos


14 Dec 2007 13:00
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Different wrote:
Shaos wrote:
В России есть ATF-ы, а вариант ispGAL вряд ли кому интересен из-за дороговизны и засекреченности...

ATF-ы медленнее, а по ценам практически одинаковые.
И насчет секретности сомневаюсь.


Медленные и по цене одинаковые? У нас ATF16V8-10 стоят в несколько раз меньше, чем GAL16V8-10 (и то, и это 10 нс)

_________________
:dj: https://mastodon.social/@Shaos


14 Dec 2007 13:09
Profile WWW
Doomed

Joined: 18 Feb 2007 11:40
Posts: 408
Reply with quote
Post 
Shaos wrote:
Медленные и по цене одинаковые? У нас ATF16V8-10 стоят в несколько раз меньше, чем GAL16V8-10 (и то, и это 10 нс)

ispGAL и просто GAL - немного разные вещи ;)
ispGAL имеет 2,3нс, а GAL - вообще прошлый век, имхо


15 Dec 2007 01:23
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Different wrote:
Shaos wrote:
Медленные и по цене одинаковые? У нас ATF16V8-10 стоят в несколько раз меньше, чем GAL16V8-10 (и то, и это 10 нс)

ispGAL и просто GAL - немного разные вещи ;)
ispGAL имеет 2,3нс, а GAL - вообще прошлый век, имхо


ispGAL 2.3 нс есть за 4 доллара в корпусе QFN-32 - вручную такой не запаять...

P.S. и вообще все PAL/GAL - это прошлый век, а в этом веке рулят FPGA ;)

_________________
:dj: https://mastodon.social/@Shaos


15 Dec 2007 07:27
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Shaos wrote:
Минимальный формат JEDEC (без тестовых векторов), необходимый для прошивки GAL22V10 (аналогично и для других перепрограммируемых микросхем с открытой архитектурой), до безобразия прост - основной текст находится между двумя символами - '\x02' и '\x03', обозначающими начало и конец сообщения, между ними располагаются команды, разделённые звёздочками (далее свои комментарии по тексту пишу после трёх минусов --- их в тексте файла .jed не должно быть):

здесь произвольный текст
.--- тут должен быть символ '\x02'
GAL22V10*QP24*QF5892* --- некий текст, далее количество ног у микросхемы (после QP) и количество перепрограммируемых перемычек (после QF)
G0*F0* --- секьюрный бит (после G) и состояние перемычек по умолчанию (после F, обычно 0 - нетронуто)
N note* --- комментарии пишутся после символа N
L0000 11111111011111111111111111111101111111111111* --- список прожигаемых (1) и оставляемых (0) перемычек, непосредственно после L пишется номер первой перемычки в этой строке (тут 0)
L0044 11111111110111111101111111110111111111111111* --- списков может быть несколько (в этой строке адрес первой перемычки - 44)
C5C65* --- после буквы C идёт шестнадцатиричное представление 16-битной контрольной суммы прошивки (сумма байтов, составленных из битов-перемычек)
. --- тут должен быть символ '\x03'
0000 --- шестнадцатиричная контрольная сумма текстового сообщения (вместе с переводами строк и т.д.), однако допустимо использовать 0000 в качестве признака игнориования контрольной суммы сообщения.

Краткое описание составлено вот по этому тексту: http://ftp.dataio.com/appnotes/jedec2.txt


Сделал "вручную" прошивку для GAL16V8 (основная разница - надо писать *QP20*QF2194 и структура у микрухи иная) и попробовал прошить старые PALCE16V8 - в основном получилось, но входы 1 и 11 почему-то не хотят участвовать в вычислениях...

_________________
:dj: https://mastodon.social/@Shaos


15 Dec 2007 07:32
Profile WWW
Fanat

Joined: 02 Oct 2007 02:25
Posts: 73
Location: 78.108.67.186
Reply with quote
Post 
Shaos wrote:
AlexM wrote:
...
/doza_ok.d := p0 * p1 * p2 */in2 * /cikl * load * run
+/doza_ok * /cikl * p0 * run

strreg.trst = run doza_ok.trst = run
strt.trst = run out6.trst = run
stop.trst = run tare.trst = run
load.trst = run null.trst = run


это чтоли PALASM? ;)

Возможно, но на CUPL не похож, а может и ABEL ? :-?


15 Dec 2007 07:42
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 60 posts ]  Go to page 1, 2, 3, 4  Next

Who is online

Users browsing this forum: No registered users and 8 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

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.