nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 03 Apr 2020 18:38



Reply to topic  [ 21 posts ]  Go to page 1, 2  Next
Ввод схемы в текстовом виде 
Author Message
Fanat

Joined: 27 May 2011 05:25
Posts: 79
Location: Perm
Reply with quote
Post 
Можно ли в какой-нибудь системе моделирования схему вводить в текстовом виде, т.е. на некоем языке программирования? Не имею ввиду Verilog, VHDL и т.д. так как они достаточно навороченные. Интрересует просто перечень компонентов (черных ящиков) и связей между ними.
Суда пост в связи с идеей разработать свою систему онлайн моделирования...


11 Oct 2012 00:58
Profile
God

Joined: 02 Jan 2006 03:28
Posts: 1393
Location: Abakan
Reply with quote
Post 
KolAnVi wrote:
Можно ли в какой-нибудь системе моделирования схему вводить в текстовом виде, т.е. на некоем языке программирования?
Теоретисськи можно разработать. Будет довольно просто, если ограничиться только wires меж готовых элементов. Но по сути это повторит gerber.
2 Shaos, тебе тогда и заводик pcb'шек заводить свой надобно, а не в ti вкладываться ;)


11 Oct 2012 05:40
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
KolAnVi wrote:
Можно ли в какой-нибудь системе моделирования схему вводить в текстовом виде, т.е. на некоем языке программирования? Не имею ввиду Verilog, VHDL и т.д. так как они достаточно навороченные. Интрересует просто перечень компонентов (черных ящиков) и связей между ними.


Netlist

_________________
:eugeek: https://twitter.com/Shaos1973


11 Oct 2012 06:46
Profile WWW
Fanat

Joined: 27 May 2011 05:25
Posts: 79
Location: Perm
Reply with quote
Post 
Shaos wrote:
Netlist

Спасибо.
...соответственно, Spice http://www.allaboutcircuits.com/vol_5/chpt_7/8.html
Только если реальную схему на netlist-e задавать - она нечитаема.
Вот так немного лучше было бы:
Code:
DD1: LN1
DD2,DD8: IE7
DD11: LA3
DD12,DD14: ID4
DD1.4{element 3 out}=wire.clock=DD8.5{C+ positive}=DD1.5{element 5 in}
DD8.14{R0 async}=GND
DD8.3{clock/2}=DD13.13{A0}
DD8.2{clock/4}=DD13.3{A1}=DD14.1{D1}=DD11.4{element 3 in1}=wire.15
DD8.6{clock/8}=DD13.1{D1}
DD8.7{clock/16}=wire.1
DD8.12{/P1 carry}=DD2.5{C+ positive}

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


11 Oct 2012 08:03
Profile
God

Joined: 02 Jan 2006 03:28
Posts: 1393
Location: Abakan
Reply with quote
Post 
KolAnVi wrote:
Shaos wrote:
Netlist

Спасибо.
...соответственно, Spice http://www.allaboutcircuits.com/vol_5/chpt_7/8.html
Только если реальную схему на netlist-e задавать - она нечитаема.
Вот так немного лучше было бы:
Code:
DD1: LN1
DD2,DD8: IE7
DD11: LA3
DD12,DD14: ID4
DD1.4{element 3 out}=wire.clock=DD8.5{C+ positive}=DD1.5{element 5 in}
DD8.14{R0 async}=GND
DD8.3{clock/2}=DD13.13{A0}
DD8.2{clock/4}=DD13.3{A1}=DD14.1{D1}=DD11.4{element 3 in1}=wire.15
DD8.6{clock/8}=DD13.1{D1}
DD8.7{clock/16}=wire.1
DD8.12{/P1 carry}=DD2.5{C+ positive}

Тоже не очень выразительно по сравнению со схемой... Но... Можно легко находить связи(в отличие от графической схемы в журнале), можно ставить комментарии, можно упрощать, например, если известно, что вот эта кучка логических элементов есть сравнение с 312, то так и запишем(т.е. простые логические выражения в языке оставляем). В общем, основное предназначение - быстро ввести (цифровую) схему с бумаги/картинки.
Не, ну эт как бы нормальная идея. Осталось малость - формализовать хотя бы основной синтаксис. А потом попробовать отрисовать схему по коду. Предлагаю ввести понятие BUS. И делать всё в нотации XML. Соответственно:
Code:
<BUS name="1">
  <WIRE name="A1">
    DD8.2 //clock/4
    DD13.3 //A1
    DD14.1 //D1
    DD11.4/ //element 3 in1
    wire.15
  </WIRE>
</BUS>

Т.е. выводы DD8.2,DD13.3,DD14.1,DD11.4 и wire/15 соединяются в линию A1, и принадлежат шине "1". Парсить удобно, да и нагляднее, imho.


11 Oct 2012 08:25
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
Только не XML...

_________________
:eugeek: https://twitter.com/Shaos1973


11 Oct 2012 08:43
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
KolAnVi wrote:
Shaos wrote:
Netlist

Спасибо.
...соответственно, Spice http://www.allaboutcircuits.com/vol_5/chpt_7/8.html


SPICE это не совсем то, вот я о чём:
Code:
Netlist

Exported from singlesided.sch at 11.10.12 11:04

EAGLE Version 5.10.0 Copyright (c) 1988-2010 CadSoft

Net      Part     Pad      Pin        Sheet

+12V     C1       +        +          1
         C3       2        2          1
         J1       2        2          1
         U1       3        VI         1

A0       IC1      17       RA0        1
         J1       4        4          1

A1       IC1      18       RA1        1
         J1       5        5          1

A2       IC1      1        RA2        1
         J1       6        6          1

A3       IC1      2        RA3        1
         J1       7        7          1

A4       IC1      3        T0CKI/RA4  1
         J1       8        8          1

B0       IC1      6        RB0        1
         J1       9        9          1

B1       IC1      7        RB1        1
         J1       10       10         1

B2       IC1      8        RB2        1
         J1       11       11         1

B3       IC1      9        RB3        1
         J1       12       12         1

B4       IC1      10       RB4        1
         J1       13       13         1

B5       IC1      11       RB5        1
         J1       14       14         1

B6       IC1      12       RB6        1
         J1       15       15         1
         J1       18       18         1

B7       IC1      13       RB7        1
         J1       16       16         1
         J1       17       17         1

GND      C1       -        -          1
         C2       -        -          1
         C3       1        1          1
         C4       1        1          1
         C5       1        1          1
         C6       1        1          1
         IC1      5        VSS        1
         J1       1        1          1
         J1       20       20         1
         U1       2        GND        1

N$1      D1       K        C          1
         IC1      4        !MCLR      1
         J1       19       19         1

N$2      D1       A        A          1
         R1       1        1          1

N$3      C5       2        2          1
         IC1      16       OSC1       1
         Q1       2        2          1

N$4      C6       2        2          1
         IC1      15       OSC2       1
         Q1       1        1          1

VCC      C2       +        +          1
         C4       2        2          1
         IC1      14       VDD        1
         J1       3        3          1
         R1       2        2          1
         U1       1        VO         1


Такой Netlist генерит Eagle например

_________________
:eugeek: https://twitter.com/Shaos1973


11 Oct 2012 09:03
Profile WWW
Fanat

Joined: 27 May 2011 05:25
Posts: 79
Location: Perm
Reply with quote
Post 
Это другой формат, не тот что по первой найденной мной ссылке.
В таком виде тоже устраивает.
Только не понятно, это human-readаble report-файл или его можно импортировать? Хватает ли тут формальности?


11 Oct 2012 20:39
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
KolAnVi wrote:
Это другой формат, не тот что по первой найденной мной ссылке.
В таком виде тоже устраивает.
Только не понятно, это human-readаble report-файл или его можно импортировать? Хватает ли тут формальности?


Partlist можно ещё присовокупить - тут ссылки на конкретные компоненты:

Code:
Partlist

Exported from singlesided.sch at 10/11/12 11:50 PM

EAGLE Version 5.6.0 Copyright (c) 1988-2009 CadSoft

Part     Value          Device          Package      Library        Sheet

C1       10u            E2,5-6          E2,5-6       polcap         1
C2       10u            E2,5-6          E2,5-6       polcap         1
C3       10n            C-EU025-025X050 C025-025X050 rcl            1
C4       10n            C-EU025-025X050 C025-025X050 rcl            1
C5       27p            C2.5/2          C2,5-2       capacitor-wima 1
C6       27p            C2.5/2          C2,5-2       capacitor-wima 1
D1       1N4148         1N4148          DO35-10      diode          1
IC1      16F84          PIC16F84AP      DIL18        microchip      1
J1                      PINHD-1X20      1X20         PINHEAD        1
Q1                      XTAL/S          QS           special        1
R1       2.2k           R-EU_0207/10    0207/10      rcl            1
U1       78L05          78LXXZ          TO92         linear         1

_________________
:eugeek: https://twitter.com/Shaos1973


11 Oct 2012 21:46
Profile WWW
God

Joined: 02 Jan 2006 03:28
Posts: 1393
Location: Abakan
Reply with quote
Post 
Shaos wrote:
Только не XML...
С чего так категорично?


11 Oct 2012 22:58
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
jdigreze wrote:
Shaos wrote:
Только не XML...
С чего так категорично?

XML мёртв, а в инете рулит JSON...

_________________
:eugeek: https://twitter.com/Shaos1973


11 Oct 2012 23:19
Profile WWW
God

Joined: 02 Jan 2006 03:28
Posts: 1393
Location: Abakan
Reply with quote
Post 
Shaos wrote:
jdigreze wrote:
Shaos wrote:
Только не XML...
С чего так категорично?

XML мёртв, а в инете рулит JSON...
Ну прям совсем категорично. Отнюдь не мертв, по крайней мере в наших необъятных просторах.
Согласен что JSON лаконичнее.


12 Oct 2012 05:43
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Shaos wrote:
XML мёртв...

Shaos у нас - как «пролетариат - могильщик буржуазии»... :lol:

Столько всего уже на моей памяти похоронил, а оно всё живёт,
и даже тленом не запахло... :D

_________________
iLavr


12 Oct 2012 06:01
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18292
Location: Silicon Valley
Reply with quote
Post 
Lavr wrote:
Shaos wrote:
XML мёртв...

Shaos у нас - как «пролетариат - могильщик буржуазии»... :lol:

Столько всего уже на моей памяти похоронил, а оно всё живёт,
и даже тленом не запахло... :D


Запахло-запахло, только вот не все это чуствуют ;)

_________________
:eugeek: https://twitter.com/Shaos1973


12 Oct 2012 07:16
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Shaos wrote:
Запахло-запахло, только вот не все это чуствуют ;)

Ну когда кто-то чувствует, то, чего не ощущают другие - он либо провидец,
либо психопат... :-?



PS. А может стоит говорить не "мёртв", а "на пенсии" (Retired)? :lol:
А то мне ещё на старших курсах рассказали, что Fortran сдох и Basic мёртв,
а они до сих пор живее Ленина в мавзолее! А он, как известно, - живее
всех живых!
:wink:

_________________
iLavr


12 Oct 2012 08:09
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 21 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 1 guest


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.