content update
Some checks failed
Build Blog / Build (push) Failing after 2m27s

added index to hikmicro hacking part 1
worked on cleanup of yosys4gal
removed "post" tag from slide decks
This commit is contained in:
Champlin, Saji 2025-04-15 12:05:39 -05:00
parent 7613c08b84
commit 92bcb1e4b9
3 changed files with 15 additions and 7 deletions

View file

@ -0,0 +1,9 @@
---
title: Hacking Hikmicro part 1
description: Reverse engineering the Hikmicro Pocket C to understand the image format
---
I recently picked up a Hikmicro Pocket C thermal imager, since
my old Seek Thermal was becoming too annoying to use. The Pocket
C is a standalone device with a much better sensor. It supports
radiometric images as well as radiometric video and USB radio.

View file

@ -6,10 +6,10 @@ date: 2024-06-14
## A history lesson
During the semiconductor revolution, a dilemma appeared: Designing new ICs
During the semiconductor revolution, a dilemma appeared: Designing new integrated circuits
required a lot of time and effort to create the mask, and iteration
expensive. Due to limited compute capability, ICs could not be complex designs.
tools/compute to do tasks like optimization or place-and-route were limited.
expensive. Due to limited tooling, ICs could not be complex designs.
Techniques and tools to do tasks like optimization or place-and-route did not exist or were primitive.
And what if you wanted a low-volume design? Programmable Logic Arrays (PLAs)
were an early approach to these problems. The idea was simple: create a
flexible logic architecture that could be modified later in the process to
@ -40,7 +40,7 @@ electronically-erasable, 22-pin programmable logic block, which had up to 10
outputs that are registered and used for feedback. These outputs can be tri-stated
to give greater flexibility.
![A figure shows the Output Logic Macrocell, or OLMC. The OLMC consists of a D Flip-Flop, feedback routing, and 4-to-1 mux to select behavior](gal_olmc.png)
![A figure shows the Output Logic Macro-cell, or OLMC. The OLMC consists of a D Flip-Flop, feedback routing, and 4-to-1 mux to select behavior](gal_olmc.png)
## Back To Today: GALs in the 21st Century
@ -63,7 +63,7 @@ GALs operate at 5 volts is useful when interfacing with older systems and
removes the need for a level shifter.
However, this isn't all great. Programming GALs is an exercise in frustration.
In practice, this isn't all great. Programming GALs is an exercise in frustration.
Take a look at a basic combinatorial assembly file:
```PALASM
@ -113,7 +113,7 @@ Not particularly.
Well, there is a 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 and a programmer
instead of a collection of 74-series logic. At the very least, these chips can
instead of a collection of 74-series logic. 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.

View file

@ -1,6 +1,5 @@
export default {
tags: [
"posts"
],
"layout": "layouts/deck.njk",
};