fix locking of USB_MTX
[gnuk/neug.git] / README
diff --git a/README b/README
index a2707e0..6ae5449 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
-NeuG - a random number generator implementation (for STM32F103)
+NeuG - a true random number generator implementation (for STM32F103)
 
-                                                          Version 0.03
-                                                            2012-10-09
+                                                          Version 0.10
+                                                            2013-06-XX
                                                           Niibe Yutaka
                                      Free Software Initiative of Japan
 
@@ -28,12 +28,10 @@ NeuG was named after my daughter, but I don't say she is noisy.
 Release notes
 =============
 
-This is the fourth release of NeuG, which is still experimental.
-Basic features (generating random numbers) are stable, but newly added
+This is the seventh release of NeuG, which is still experimental.  Basic
+features (generating random numbers) are stable, but newly added
 things like reGNUal support should be considered unstable.  Note that
-you need the snapshot of ChibiOS/RT (from trunk).  This means that it
-is covered by GNU GPL.  No "linking exception" option is available for
-the snapshot.
+you need Chopstx as external source code.
 
 
 FAQ
@@ -50,12 +48,8 @@ A0-double-dash: STM32F2xx and STM32F4xx have built-in TRNG, it would
                 looks not that good).
 
 Q1: How fast is NeuG device?
-A1: It's more than 50 Ki-byte/second.  Please note that the NeuG
-    device is USB "full-speed" device.  If you connect it to
-    full-speed hub or root hub which runs at full-speed, you just get
-    about 30 Ki-byte/second.  That's because host submits a frame to
-    device once per 1ms frame with full-speed hub.  When you connect
-    it to high-speed hub, you get higher performance.
+A1: It's more than 50 Ki-byte/sec for conditioned output (by SHA-256),
+    and more than 140 Ki-byte/sec for CRC-32 filtered output.
 
 Q2: Should we check condition of noise sources?
 A2: Yes, we should.  Three continuous tests are implemented, following
@@ -71,15 +65,15 @@ A3: It is because NIST SP 800-90B mandates something like that for
     RNG-tools to feed entropy to your kernel, or use for computer
     simulations, I think that CRC32 filter would be good enough.  You
     can configure NeuG device by "stty -F /dev/ttyACM0 parenb parodd"
-    to get raw data before SHA-256 conditioning component.  Then,
-    you'll get more than 350 Ki-byte/second (with high speed hub).
+    to get raw data before SHA-256 conditioning component.  With
+    high speed hub, you'll get more than 240 Ki-byte/second .
 
 
 Targets
 =======
 
-FST-01, STBee Mini, Olimex STM32-H103, CQ-STARM, and STBee are
-supported.
+FST-01, Olimex STM32-H103, and STM32 part of STM8S Discovery Kit are
+supported.  CQ-STARM, STBee Mini, and STBee will be supported.
 
 
 Souce code
@@ -98,12 +92,13 @@ It is distributed under GNU General Public Licence version 3 or later
 External source code
 ====================
 
-To build NeuG device, we need external source code.
+To build NeuG device, you need external source code.
 
-* chibios/  -- ChibiOS/RT 2.3.x snapshot
+* chopstx/ -- Chopstx, the RT Thread Library
 
-  Please get it from http://chibios.sourceforge.net/
-  We use ChibiOS/RT as the kernel for NeuG device.
+It is available at:
+
+  http://gitorious.org/chopstx/chopstx
 
 
 USB vendor ID and product ID (USB device ID)
@@ -152,7 +147,7 @@ How to compile
 
 You need GNU toolchain and newlib for 'arm-none-eabi' target.
 
-See http://github.com/uwehermann/summon-arm-toolchain/ for preparation
+See https://launchpad.net/gcc-arm-embedded for preparation
 of GNU Toolchain for 'arm-none-eabi' target.
 
 Change directory to `src':
@@ -326,14 +321,16 @@ Test results
 See files under the directory test-results, for test result of
 "rngtest" in rng-tools, NIST STS 2.1.1, and Dieharder.
 
-For Dieharder, I correct 1500MB (it took four days or so), and use
-scripts to invoke dieharder.
+I collect 110 files of 125MB (= 13750MB), and use scripts to invoke
+dieharder and rngtest.  Collecting 110 files, it took three days.
+
+For NIST STS 2.1.1, I used only 10 files of size 125MB.
 
 
 Read-only Git Repository
 ========================
 
-You can browse at http://www.gniibe.org/gitweb?p=neug.git;a=summary
+You can browse at http://www.gniibe.org/gitweb?p=neug.git
 
 You can get it by:
 
@@ -344,7 +341,7 @@ or
   $ git clone http://www.gniibe.org/git/neug.git/
 
 
-I put ChibiOS/RT as a submodule of Git.  Please do this:
+I put Chopstx as a submodule of Git.  Please do this:
 
   $ git submodule init
   $ git submodule update
@@ -354,7 +351,7 @@ I put ChibiOS/RT as a submodule of Git.  Please do this:
 Information on the Web
 ======================
 
-Not yet.
+Please use FST-01 Q&A Forum at: http://no-passwd.net/askbot/questions/