diff options
| author | Bdale Garbee <bdale@gag.com> | 2016-03-09 09:10:36 -0700 |
|---|---|---|
| committer | Bdale Garbee <bdale@gag.com> | 2016-03-09 09:10:36 -0700 |
| commit | cec12ea86c9cdc94c7e5fa482c70c66c489b9f6f (patch) | |
| tree | 744ffc7b610bcbe51527526fccd82e75d27f5808 /ChaosKey/index.mdwn | |
| parent | 746ab5128031a4c8481a4a80ad7155730e92c69f (diff) | |
| parent | 4f572dbf8d900a075c9e2cfb54ed12f559357ad5 (diff) | |
Merge branch 'master' of ssh://git.gag.com/scm/git/web/altusmetrum
Diffstat (limited to 'ChaosKey/index.mdwn')
| -rw-r--r-- | ChaosKey/index.mdwn | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/ChaosKey/index.mdwn b/ChaosKey/index.mdwn new file mode 100644 index 0000000..8cb856f --- /dev/null +++ b/ChaosKey/index.mdwn @@ -0,0 +1,91 @@ +# ChaosKey + +This is a hardware True Random Number Generator that attaches via USB. + +## Version 0.3 ## + +This one uses the better noise source coupled with an op amp that +provides 2MHz of bandwidth at a gain of 100, offering linear frequency +response at a million samples per second. + +A photo of prototype version 0.3: + +<a href="v0.3/chaoskey-v0.3.jpg"> <img src="v0.3/chaoskey-v0.3-thumb.jpg"></a> + +Here's a circuit diagram of the noise source: + +<img src="v0.3/noise-source.svg"> + +### Version 0.3 Hardware ### + + * [STM32F042](http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1574/LN1823?icmp=stm32f0x2-line_pron_pr_jan2014&sc=stm32f0x2-pr) System-on-Chip + * ARM Cortex-M0 MCU + * 32k Flash + * 6k RAM + * USB 2.0 Full Speed + * Crystal-less operation + * 20V noise source + * AP3015A boost regulator + * back-to-back 3904 transistor noise + * [OPA356](http://www.ti.com/product/opa356) op amp + * 200MHz GBP + +## Version 0.2 ## + +This version uses a better noise source, but the single transistor amp +designed to get from the 20mV noise source to a digital value doesn't +provide enough bandwidth, so the resulting signal seen by the CPU has +poor frequency response. + +Here's a photo of prototype version 0.2: + +<a href="v0.2/chaoskey-v0.2.jpg"> <img src="v0.2/chaoskey-v0.2-thumb.jpg"></a> + +### Version 0.2 Hardware ### + + * [STM32F042](http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1574/LN1823?icmp=stm32f0x2-line_pron_pr_jan2014&sc=stm32f0x2-pr) System-on-Chip + * ARM Cortex-M0 MCU + * 32k Flash + * 6k RAM + * USB 2.0 + * Crystal-less operation + * 20V noise source + * AP3015A boost regulator + * back-to-back 3904 transistor noise + +## Version 0.1 ## + +These are photos of prototype version 0.1: + +<a href="v0.1/chaoskey-v0.1-top.jpg"> <img src="v0.1/chaoskey-v0.1-top-thumb.jpg"></a> +<a href="v0.1/chaoskey-v0.1-bottom.jpg"> <img src="v0.1/chaoskey-v0.1-bottom-thumb.jpg"></a> + +### Version 0.1 Hardware ### + + * [NXP LPC11U14](http://www.nxp.com/products/microcontrollers/cortex_m0_m0/LPC11U14FHI33.html) System-on-Chip + * ARM Cortex-M0 MCU + * 32k Flash + * 6k RAM + * USB 2.0 + * 8 12-bit analog inputs + * I2C, SPI, async serial + * digital I/O + * ZXRE1004 zener diode noise source + * MCP6L92 dual op-amp + +## Software ## + +* Firmware Features + * [AltOS](../AltOS/) is written mostly in C with some ARM assembler +* Tools Used + * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout + * [GCC](http://gcc.gnu.org/) compiler and source debugger +* Licenses + * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html) + * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + +## Artifacts ## + +The hardware design files can be found on [git.gag.com](http://git.gag.com) +in the project [hw/usbtrng](http://git.gag.com/?p=hw/usbtrng;a=summary). + |
