13
communication signal between the two CC1s). Or the CC1 could be used with other external
devices and serial data to implement a part - or all - of a QKD communication protocol.
Because the electrical components, connections, and user interface are already in place (and
described in Appendix A), the CC1 can serve as a flexible platform for interrogating signals from
single photon detectors and performing associated operations.
4.1.1 The Rabbit RCM3400 Microprocessor
The Rabbit RCM3400 is a microprocessor module consisting of a simple processor integrated
with other general purpose peripheral logic. The device is programmed using a language
proprietary to Rabbit Semiconductor called Dynamic C. Dynamic C is very similar to ANSI C,
with extra functions for interacting with the digital I/O, analog inputs, and PWM outputs on the
RCM3400 module.
To program in Dynamic C, an integrated development environment (Dynamic C 9.62) and
programmer utility (DC 9.62 RFU) must be installed on your computer. A single installation
program (DynamicC_9.62_WebFull.exe) - available on the flash drive that came with your unit
as well as from Qubitekk’s website (
www.qubitekk.com
) – will install both programs. A
programming cable for uploading new firmware to your CC1 is also required and has been
included with your unit (Rabbit Programming Cable - 2mm)
A great resource for learning Dynamic C and how to program the RCM3400 is the book entitled,
“Embedded Systems Design using the Rabbit 3000 Microprocessor” by Kamal Hyder. Although
this book was published in 2004, it still contains very relevant and useful examples of how to
program and understand the operation of the RCM3400. In addition, manuals for the RCM3400
and Dynamic are available on the flash drive that came with your unit and Qubitekk’s website.
4.1.2 The Altera Cyclone IV FPGA
The Altera Cyclone IV chip is a field programmable gate array (FPGA) that can operate at
frequencies in excess of 1GHz. The chip is particularly well suited to detecting and
timestamping LVTTL pulses (as would be emitted by a single photon counting module). The
chip can be programmed using Altera’s Quartus II Web Edition (version 13+) – which is free and
available at both Altera’s website (www.altera.com) and Qubitekk’s website.
In the CC1, the Altera FPGA is actually part of an off-the-shelf prototyping board (the Terasic
DE0-Nano). This prototyping board has additional functionality that may be used in future
versions of the CC1 product. A manual for the Terasic DE0-Nano is available on the flash drive
that came with your unit as well as Qubitekk’s website.
4.1.3 Default Firmware
The CC1 comes pre-programmed for use as a general purpose coincidence counter. However,
the Dynamic C source code and the FPGA Quartus project files (including verilog modules,
Summary of Contents for CC1
Page 1: ...CC1 Handheld Coincidence Counter USER S MANUAL Rev 1 02 June 1 2015 www qubitekk com...
Page 7: ...4 Figure 4 CC1 Buttons and Ports...
Page 23: ...20 APPENDIX A Electrical Schematics and Connections...
Page 24: ...21 A 1 Top Board LCD Display...
Page 25: ...22 A 2 Bottom Board FPGA and Microprocessor...
Page 26: ...23...
Page 27: ...24...