91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

開源工具SkiDL - 用Python來描述電路

電子森林 ? 來源:電子森林 ? 作者: 蘇老師 ? 2021-10-30 10:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們用Verilog、VHDL這種硬件描述語言來設(shè)計FPGA,是否有一種方式來描述電路?如果采用了這種方式,也會像HDL在FPGA、ASIC領(lǐng)域一樣成為一種主流的趨勢么?我們來看看SkiDL的嘗試。

SKiDL 是一個模塊,允許您使用 Python 緊湊地描述電子電路和組件的互連。 生成的 Python 程序執(zhí)行電氣規(guī)則檢查以查找常見錯誤并輸出用作 PCB 布局工具輸入的網(wǎng)表。

首先,讓我們看看 KiCad 中的“正?!痹O(shè)計流程:

在這里,您在原理圖編輯器(對于 KiCad,即 EESCHEMA)中開始并繪制原理圖。由此,EESCHEMA 生成一個網(wǎng)表文件,其中列出了使用的組件以及它們的引腳如何互連。然后,您將使用 PCB 布局工具(如 KiCad 的 PCBNEW)來排列零件封裝并繪制連接網(wǎng)表中指定的引腳的線跡。

完成后,PCBNEW 會輸出一組 Gerber 文件,這些文件將發(fā)送給 PCB 制造商,該制造商將創(chuàng)建物理 PCB 并將其運送給您。然后你會在 Twitter 上張貼他們的照片,然后因為你對這個項目感到厭煩而立即把它們?nèi)舆M抽屜里幾年。

在基于 SKiDL 的設(shè)計流程中,您使用文本編輯器創(chuàng)建 Python 代碼文件,該文件使用 SKiDL 庫來描述組件的互連。該代碼文件由 Python 解釋器執(zhí)行,并輸出一個網(wǎng)表文件。從那里開始,設(shè)計流程與基于原理圖的流程相同(包括將 PCB 傾倒在抽屜中)。

那么,您為什么要使用 SKiDL?以下是 SKiDL 為電子設(shè)計帶來的一些功能:

只需要一個文本編輯器和 Python。

具有強大、靈活的語法(因為它是 Python)。

允許對電子電路進行簡潔的描述(考慮不要通過多頁原理圖跟蹤信號)。

允許電子電路的文本描述(考慮對電路使用 diff 和 git)。

對常見錯誤(例如,未連接的設(shè)備 I/O 引腳)執(zhí)行電氣規(guī)則檢查 (ERC)。

支持電子設(shè)計的線性/分層/混合描述。

促進設(shè)計重用(考慮使用 PyPi 和 Github 分發(fā)電子設(shè)計)。

可以創(chuàng)建其行為/結(jié)構(gòu)以參數(shù)方式改變的智能電路模塊(考慮根據(jù)您所需的截止頻率自動調(diào)整組件值的濾波器)。

可以使用任何 ECAD 工具(只需要兩種方法:一種用于讀取零件庫,另一種用于輸出正確的網(wǎng)表格式)。

利用 Python 生態(tài)系統(tǒng)的所有優(yōu)勢(因為它是 Python)。

免費軟件:MIT 許可證。

開源:https://github.com/devbisme/skidl

生成原理圖:

盡管 SKiDL 可以讓您避免繁瑣的原理圖繪制,但有些人仍然希望看到他們電路的圖形描述。為此,SKiDL 可以使用 1) graphviz DOT 語言或 2) 作為使用 SVG 的更傳統(tǒng)的示意圖將部件的互連顯示為有向圖。

以下電路將用于說明這兩種方法:

The SKiDL script for this circuit is:

from skidl import *

# Create part templates.
q = Part(lib="Device.lib", name="Q_PNP_CBE", dest=TEMPLATE, symtx="V")
r = Part("Device", "R", dest=TEMPLATE)

# Create nets.
gnd, vcc = Net("GND"), Net("VCC")
a, b, a_and_b = Net("A"), Net("B"), Net("A_AND_B")

# Instantiate parts.
gndt = Part("power", "GND")  # Ground terminal.
vcct = Part("power", "VCC")  # Power terminal.
q1, q2 = q(2)
r1, r2, r3, r4, r5 = r(5, value="10K")

# Make connections between parts.
a & r1 & q1["B", "C"] & r4 & q2["B", "C"] & a_and_b & r5 & gnd
b & r2 & q1["B"]
q1["C"] & r3 & gnd
vcc += q1["E"], q2["E"], vcct
gnd += gndt

點圖

注意:查看 DOT 文件需要您在系統(tǒng)上安裝 graphviz。

要為電路生成 DOT 文件,只需將以下內(nèi)容附加到腳本末尾:

generate_dot(file_='and_gate.dot')

運行腳本生成and_gate.dot文件后,您可以使用以下命令將其轉(zhuǎn)換為位圖文件:

$ dot -Tpng -Kneato -O and_gate.dot

生成的 and_gate.dot.png 文件如下所示:

e431cd4e-38e3-11ec-82a8-dac502259ad0.png

這張圖可以作為一個小電路的健全性檢查,但你可以想象如果它包括具有數(shù)百個引腳的微控制器或 FPGA 會是什么樣子!

另外你可以生成SVG格式的原理圖

e4673f9c-38e3-11ec-82a8-dac502259ad0.png

也可以將現(xiàn)有的KiCad設(shè)計轉(zhuǎn)換到SkiDL

也可以使用SkiDL來描述你的電路,并運行SPICE進行仿真。

我對這個了解得很少,只是覺得它值得關(guān)注,先分享出來,供有興趣的朋友參考。

編輯:jq
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1660

    文章

    22412

    瀏覽量

    636386
  • Verilog
    +關(guān)注

    關(guān)注

    30

    文章

    1374

    瀏覽量

    114530
  • vhdl
    +關(guān)注

    關(guān)注

    30

    文章

    822

    瀏覽量

    131701
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4876

    瀏覽量

    90049

原文標題:開源工具SkiDL - 用Python來描述電路

文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    AT32開源鴻蒙開發(fā)環(huán)境搭建

    /bin/python3.8 1 python –version安裝 python 包管理工具 sudo apt install python
    發(fā)表于 01-16 13:56

    普華基礎(chǔ)軟件出席開源操作系統(tǒng)人才培養(yǎng)啟動儀式

    與產(chǎn)業(yè)需求之間存在顯著缺口。本次啟動的“開源操作系統(tǒng)人才培養(yǎng)”,是普華基礎(chǔ)軟件開源“星輝計劃”五大生態(tài)體系中的關(guān)鍵一環(huán),旨在通過“開源共建”模式,系統(tǒng)性破解人才難題,為產(chǎn)業(yè)可持續(xù)發(fā)
    的頭像 發(fā)表于 12-18 17:11 ?1213次閱讀

    沒有專利的opencv-python 版本

    專利風險,僅需避開 opencv-contrib-python 的 nonfree 模塊(或直接無頭版)。 如果你的場景需要特定功能(如特征提取、目標跟蹤),可以告訴我具體需求,我?guī)湍阃扑]對應(yīng)的無專利 API 和代碼示例~
    發(fā)表于 12-13 12:37

    Python中借助NVIDIA CUDA Tile簡化GPU編程

    兼容未來的 GPU 架構(gòu)。借助 NVIDIA cuTile Python,開發(fā)者可以直接 Python 編寫 tile kernels。
    的頭像 發(fā)表于 12-13 10:12 ?1204次閱讀
    在<b class='flag-5'>Python</b>中借助NVIDIA CUDA Tile簡化GPU編程

    openDACS 2025 開源EDA與芯片賽項 賽題七:基于大模型的生成式原理圖設(shè)計

    ,形成了一批具有應(yīng)用價值的技術(shù)成果。本屆大賽預(yù)計發(fā)布50個賽項,持續(xù)規(guī)劃1500萬元總獎金。 openDACS2025開源EDA與芯片賽項,聚焦集成電路產(chǎn)業(yè)的數(shù)字設(shè)計、處理器設(shè)計自動化、生成式芯片設(shè)計等
    發(fā)表于 11-13 11:49

    Python 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴展的商品詳情爬蟲實戰(zhàn)

    一、技術(shù)選型:為什么選 Python 而不是 Java? 結(jié)論: “調(diào)研階段 Python,上線后如果 QPS 爆表再考慮 Java 重構(gòu)?!?二、整體架構(gòu)速覽(3 分鐘看懂) 三、開發(fā)前準備(5
    的頭像 發(fā)表于 10-21 16:59 ?520次閱讀
    <b class='flag-5'>用</b> <b class='flag-5'>Python</b> 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴展的商品詳情爬蟲實戰(zhàn)

    termux如何搭建python游戲

    安裝Python及包管理工具 ```bash apt install -y python python-pip# 自動安裝Python3
    發(fā)表于 08-29 07:06

    開源工具 Made with KiCad(131):BomberCat 安全測試工具

    “? BomberCat 是一個結(jié)合硬件開發(fā)與安全測試的開源工具,主要面向電子工程和網(wǎng)絡(luò)安全領(lǐng)域。用于檢測銀行終端、門禁系統(tǒng)等設(shè)備的漏洞。 ” Made with KiCad 系列將支持新的展示方式
    的頭像 發(fā)表于 06-19 11:18 ?8017次閱讀
    <b class='flag-5'>開源</b><b class='flag-5'>工具</b> Made with KiCad(131):BomberCat 安全測試<b class='flag-5'>工具</b>

    自簽名證書工具cfssl詳解

    CFSSL(CloudFlare's PKI and TLS toolkit)由 CloudFlare go語言開發(fā)的一個開源工具,用于證書簽名、驗證和管理。
    的頭像 發(fā)表于 06-11 16:30 ?709次閱讀
    自簽名證書<b class='flag-5'>工具</b>cfssl詳解

    擁抱開源!一起做FPGA開發(fā)板啦!

    我們,一起為國產(chǎn)FPGA開發(fā)注入開源的活力,代碼和電路點亮創(chuàng)新的火花,共同打造一款屬于開發(fā)者們的、獨一無二的FPGA開發(fā)板!期待你的加入,讓我們攜手開啟這場充滿挑戰(zhàn)與驚喜的開源之旅!
    發(fā)表于 06-06 14:05

    開源鴻蒙工程工具分論壇圓滿舉辦

    近日,開源鴻蒙開發(fā)者大會2025(OHDC.2025)工程工具分論壇在深圳圓滿舉辦。本次分論壇由開源鴻蒙IDE SIG組長、華為終端BG工程工具技術(shù)專家唐春擔任出品人,主題為“
    的頭像 發(fā)表于 06-05 15:35 ?1028次閱讀

    tscircuit - 電路開發(fā)的 React 范式? TypeScript、React和 AI工具構(gòu)建電子產(chǎn)品

    TypeScript、React 和 AI 工具構(gòu)建電子產(chǎn)品。
    的頭像 發(fā)表于 04-30 18:18 ?1500次閱讀
    tscircuit - <b class='flag-5'>電路</b>開發(fā)的 React 范式?   <b class='flag-5'>用</b>TypeScript、React和 AI<b class='flag-5'>工具</b>構(gòu)建電子產(chǎn)品

    普華基礎(chǔ)軟件開源操作系統(tǒng)迎來全新版本

    近日,普華基礎(chǔ)軟件開源操作系統(tǒng)媒體發(fā)布會在上海中國汽車會客廳召開——全球首個開源智能駕駛操作系統(tǒng)微內(nèi)核龘EasyAda、開源安全車控操作系統(tǒng)小滿EasyXMen全新版本正式發(fā)布?,F(xiàn)
    的頭像 發(fā)表于 04-25 16:18 ?986次閱讀

    python入門圣經(jīng)-高清電子書(建議下載)

    此資料內(nèi)容是一本針對所有層次的Python 讀者而作的Python 入門電子書。 全書分兩部分:第一部分介紹Python 編程所必須了解的基本概念,包括matplotlib、NumP
    發(fā)表于 04-10 16:53

    ?如何在虛擬環(huán)境中使用 Python,提升你的開發(fā)體驗~

    。RaspberryPiOS預(yù)裝了Python3。干擾系統(tǒng)Python的安裝可能會給你的操作系統(tǒng)帶來問題。安裝第三方Python庫時,請務(wù)必使用正確的包管理工具。在Lin
    的頭像 發(fā)表于 03-25 09:34 ?815次閱讀
    ?如何在虛擬環(huán)境中使用 <b class='flag-5'>Python</b>,提升你的開發(fā)體驗~