This commit is contained in:
parent
f9d7b0d26a
commit
bf48a5866c
2
.gitattributes
vendored
Normal file
2
.gitattributes
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.woff2 filter=lfs diff=lfs merge=lfs -text
|
|
@ -24,6 +24,7 @@
|
||||||
{#- Add an arbitrary string to the bundle #}
|
{#- Add an arbitrary string to the bundle #}
|
||||||
{%- css %}* { box-sizing: border-box; }{% endcss %}
|
{%- css %}* { box-sizing: border-box; }{% endcss %}
|
||||||
{#- Add the contents of a file to the bundle #}
|
{#- Add the contents of a file to the bundle #}
|
||||||
|
{%- css %}{% include "public/css/fonts.css"%} {% endcss %}
|
||||||
{%- css %}{% include "public/css/index.css" %}{% endcss %}
|
{%- css %}{% include "public/css/index.css" %}{% endcss %}
|
||||||
{#- Or add from node_modules #}
|
{#- Or add from node_modules #}
|
||||||
{# {%- css %}{% include "node_modules/prismjs/themes/prism-okaidia.css" %}{% endcss %} #}
|
{# {%- css %}{% include "node_modules/prismjs/themes/prism-okaidia.css" %}{% endcss %} #}
|
||||||
|
|
|
@ -24,6 +24,8 @@ and then program the next. Later versions would solve the whole one-time-program
|
||||||
Demands would increase futher and flip-flops would be added, as well as feedback capability. This allows for very complex
|
Demands would increase futher and flip-flops would be added, as well as feedback capability. This allows for very complex
|
||||||
functions to be implemented, since you can chain "rows" of the output blocks.
|
functions to be implemented, since you can chain "rows" of the output blocks.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Back To Today: GALs in the 21st Century
|
## Back To Today: GALs in the 21st Century
|
||||||
|
|
||||||
These days, modern FPGA technology can be yours for a couple of bucks. Open-source toolchains allow fast, easy development,
|
These days, modern FPGA technology can be yours for a couple of bucks. Open-source toolchains allow fast, easy development,
|
||||||
|
@ -66,4 +68,21 @@ with simulation, testbenches, and synthesis, the raw assembly is stuck in the 80
|
||||||
Verilog compilers for GALs *did exist*, but they ran on old-as-dirt systems, didn't have any significant optimization
|
Verilog compilers for GALs *did exist*, but they ran on old-as-dirt systems, didn't have any significant optimization
|
||||||
capabilities, and were almost always proprietary. What if we could make our own open-source Verilog flow for GAL chips?
|
capabilities, and were almost always proprietary. What if we could make our own open-source Verilog flow for GAL chips?
|
||||||
Then we could write test benches in Verilog, map complex designs onto the chip, and even integrate our designs with FPGAs later
|
Then we could write test benches in Verilog, map complex designs onto the chip, and even integrate our designs with FPGAs later
|
||||||
down the line.
|
down the line.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Is this useful?
|
||||||
|
|
||||||
|
# using menu screens
|
||||||
|
|
||||||
|
No, not really.
|
||||||
|
|
||||||
|
Well, there's a very very niche use case. These parts are 5-volt tolerant, and come in DIP packages. If you needed some basic glue logic
|
||||||
|
when working on an older 5 volt system, you might want to have a few of these + a programmer instead of a collection of 74-series logic.
|
||||||
|
At the very least, these chips can emulate any 74-series chip, and can reduce a multi-chip design to a single chip.
|
||||||
|
The DIP form factor makes it much easier to breadboard, and the chips have zero start up delay.
|
||||||
|
|
||||||
|
In that narrow use case, `yosys4gal` is rather crucial. You no longer need WinCUPL or any old software, instead
|
||||||
|
using Verilog + Yosys. Your designs are automatically optimized, which makes it easier to fit more complex logic. And since it's verilog,
|
||||||
|
you can integrate it into a larger simulation or move it to an FPGA later if you desire.
|
|
@ -12,6 +12,7 @@ import { eleventyImageTransformPlugin } from "@11ty/eleventy-img";
|
||||||
|
|
||||||
|
|
||||||
import pluginDrafts from "./eleventy.config.drafts.js";
|
import pluginDrafts from "./eleventy.config.drafts.js";
|
||||||
|
import pluginFonts from "./eleventy.config.fonts.js";
|
||||||
|
|
||||||
/** @param {import('@11ty/eleventy').UserConfig} eleventyConfig */
|
/** @param {import('@11ty/eleventy').UserConfig} eleventyConfig */
|
||||||
export default async function (eleventyConfig) {
|
export default async function (eleventyConfig) {
|
||||||
|
@ -30,11 +31,7 @@ export default async function (eleventyConfig) {
|
||||||
|
|
||||||
// App plugins
|
// App plugins
|
||||||
eleventyConfig.addPlugin(pluginDrafts);
|
eleventyConfig.addPlugin(pluginDrafts);
|
||||||
eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
|
// eleventyConfig.addPlugin(pluginFonts);
|
||||||
extensions: "html",
|
|
||||||
formats: [ "auto" ],
|
|
||||||
})
|
|
||||||
|
|
||||||
// Official plugins
|
// Official plugins
|
||||||
eleventyConfig.addPlugin(feedPlugin, {
|
eleventyConfig.addPlugin(feedPlugin, {
|
||||||
collection: {
|
collection: {
|
||||||
|
@ -52,6 +49,11 @@ export default async function (eleventyConfig) {
|
||||||
eleventyConfig.addPlugin(pluginNavigation);
|
eleventyConfig.addPlugin(pluginNavigation);
|
||||||
eleventyConfig.addPlugin(EleventyHtmlBasePlugin);
|
eleventyConfig.addPlugin(EleventyHtmlBasePlugin);
|
||||||
eleventyConfig.addPlugin(pluginBundle);
|
eleventyConfig.addPlugin(pluginBundle);
|
||||||
|
eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
|
||||||
|
extensions: "html",
|
||||||
|
formats: [ "auto" ],
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Filters
|
// Filters
|
||||||
|
|
1604
package-lock.json
generated
1604
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -21,7 +21,8 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@11ty/eleventy": "^3.0.0",
|
"@11ty/eleventy": "^3.0.0",
|
||||||
"@11ty/eleventy-img": "^4.0.2"
|
"@11ty/eleventy-img": "^4.0.2",
|
||||||
|
"ttf2woff2": "^6.0.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@11ty/eleventy-navigation": "^0.3.5",
|
"@11ty/eleventy-navigation": "^0.3.5",
|
||||||
|
|
38
public/css/fonts.css
Normal file
38
public/css/fonts.css
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
@font-face {
|
||||||
|
font-family: 'WO3';
|
||||||
|
src: url('/fonts/WO3.woff2') format('woff2'),
|
||||||
|
url('/fonts/WO3.ttf') format('ttf');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'SometypeMono';
|
||||||
|
src: url('/fonts/SometypeMono-Regular.woff2') format('woff2'),
|
||||||
|
url('/fonts/SometypeMono-Regular.ttf') format('ttf') ;
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'SometypeMono';
|
||||||
|
src: url('/fonts/SometypeMono-Bold.woff2') format('woff2'),
|
||||||
|
url('/fonts/SometypeMono-Bold.ttf') format('ttf') ;
|
||||||
|
font-weight: bold;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'SometypeMono';
|
||||||
|
src: url('/fonts/SometypeMono-Medium.woff2') format('woff2'),
|
||||||
|
url('/fonts/SometypeMono-Medium.ttf') format('ttf') ;
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Orbitron";
|
||||||
|
src: url('/fonts/Orbitron-VariableFont_wght.woff2') format('woff2');
|
||||||
|
font-weight: 600;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
/* Defaults */
|
/* Defaults */
|
||||||
:root {
|
:root {
|
||||||
--font-family: -apple-system, system-ui, sans-serif;
|
/* --font-family: -apple-system, system-ui, sans-serif; */
|
||||||
|
--font-family: SometypeMono;
|
||||||
--font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace;
|
--font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,7 +54,7 @@ html {
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
}
|
}
|
||||||
body {
|
body {
|
||||||
max-width: 40em;
|
max-width: 80em;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* https://www.a11yproject.com/posts/how-to-hide-content/ */
|
/* https://www.a11yproject.com/posts/how-to-hide-content/ */
|
||||||
|
@ -268,3 +269,7 @@ a[href].header-anchor:focus,
|
||||||
h2 + .header-anchor {
|
h2 + .header-anchor {
|
||||||
font-size: 1.5em;
|
font-size: 1.5em;
|
||||||
}
|
}
|
||||||
|
h1, h2, h3 {
|
||||||
|
font-family: WO3;
|
||||||
|
letter-spacing: .2rem;
|
||||||
|
}
|
||||||
|
|
BIN
public/fonts/Orbitron-VariableFont_wght.ttf
(Stored with Git LFS)
Normal file
BIN
public/fonts/Orbitron-VariableFont_wght.ttf
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/Orbitron-VariableFont_wght.woff2
(Stored with Git LFS)
Normal file
BIN
public/fonts/Orbitron-VariableFont_wght.woff2
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Bold.ttf
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Bold.ttf
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Bold.woff2
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Bold.woff2
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Medium.ttf
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Medium.ttf
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Medium.woff2
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Medium.woff2
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Regular.ttf
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Regular.ttf
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/SometypeMono-Regular.woff2
(Stored with Git LFS)
Normal file
BIN
public/fonts/SometypeMono-Regular.woff2
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/WO3.ttf
(Stored with Git LFS)
Normal file
BIN
public/fonts/WO3.ttf
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
public/fonts/WO3.woff2
(Stored with Git LFS)
Normal file
BIN
public/fonts/WO3.woff2
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in a new issue