2
0
mirror of https://github.com/m-labs/artiq.git synced 2024-12-12 21:26:37 +08:00
Commit Graph

196 Commits

Author SHA1 Message Date
f6522922f8 coredevice/exceptions: PEP8 2015-12-22 12:03:11 +08:00
23355d8eff coredevice: restore RTIOCollisionError 2015-12-22 11:59:18 +08:00
007a7170e1 analyzer: report DDS channel number 2015-12-21 18:37:53 +08:00
e87436fc03 coredevice/analyzer: remove zero-timestamp msg filtering (now unnecessary) 2015-12-21 11:15:58 +08:00
b96e0d241e coredevice/analyzer: set VCD timescale 2015-12-20 22:06:07 +08:00
4b5c10b641 coredevice/core: remove default period 2015-12-20 22:05:52 +08:00
cdcb57effe coredevice/analyzer: basic VCD writing 2015-12-20 19:32:52 +08:00
46f59b673f coredevice: analyzer message decoding 2015-12-20 14:34:16 +08:00
whitequark
afee03b89c Commit missing parts of 4fb1de33. 2015-12-19 06:41:32 +08:00
whitequark
4fb1de33c9 Initial invocation of a @kernel function can now return a value (fixes #197). 2015-12-19 05:26:18 +08:00
0832c71a66 coredevice/comm_tcp: support retrieving analyzer data 2015-12-18 18:22:50 +08:00
whitequark
52102a1a79 Fix handling of default values for RPC arguments (fixes #190). 2015-12-18 18:03:07 +08:00
eeb53c5aa5 coredevice/comm: compare software and gateware versions. Closes #97 2015-12-11 22:56:40 +08:00
whitequark
16ae0fb6eb compiler.embedding: instantiate RPC method types (fixes #180). 2015-11-27 16:29:13 +08:00
whitequark
e1cd2ccd40 compiler: pull in dependencies in more finely grained way (fixes #181). 2015-11-24 17:32:04 +08:00
whitequark
bd5b324fc2 Merge branch 'master' into new-py2llvm 2015-10-13 19:24:45 +03:00
5f89d1a78f doc: document core device driver. Closes #119 2015-10-06 18:12:57 +08:00
whitequark
7a6fc3983c Make delay component of function type unifyable. 2015-09-30 18:41:14 +03:00
whitequark
3e1348a084 Merge branch 'master' of github.com:m-labs/artiq into new-py2llvm 2015-09-27 18:22:28 +03:00
Raghavendra Srinivas
b3831d3387 dds: support amplitude tuning on AD9914
Closes #108
2015-09-05 13:15:09 -06:00
6e5b71a43e coredevice/comm_tcp: disable socket timeout after connect
Reads may block indefinitely.
2015-09-03 09:59:24 -06:00
whitequark
2df8b946f9 Factor out the code to pretty-print diagnostics. 2015-08-31 22:52:39 -06:00
whitequark
501ba912c2 Implement {delay,now,at}{,_mu} and {mu,seconds}_to_{seconds,mu}. 2015-08-31 09:59:33 -06:00
a36a50ba0d comm_tcp: add connect timeout 2015-08-28 16:23:23 +08:00
whitequark
9605e8215f coredevice.ttl: update for new int semantics. 2015-08-28 02:11:26 -05:00
whitequark
7c1abb25ec compiler.embedding: test all diagnostics.
Also, unify and improve diagnostic messages.
2015-08-28 00:47:28 -05:00
whitequark
d80be482fc Allow clearing core device log buffer.
This is useful to get a fresh environment, such as when
running tests that print to log buffer.
2015-08-28 00:37:46 -05:00
0fe0f4d433 dds: fix phase computation. Closes #79. 2015-08-27 11:09:33 +08:00
1991b3c910 coredevice/TTLClockGen: fix attribute init 2015-08-27 09:48:11 +08:00
whitequark
9b9fa1ab7c Allow embedding and RPC sending host objects. 2015-08-25 21:56:01 -07:00
whitequark
673512f356 coredevice.core: fix imports. 2015-08-19 12:37:31 -07:00
c625f2e7c9 ttl: minor docstring cleanup 2015-08-17 23:50:24 +08:00
c71d207e90 core/break_realtime: only increase now 2015-08-17 23:41:21 +08:00
dee844510c comm_tcp: enable TCP keepalive on host side as well 2015-08-15 16:03:00 +08:00
f073dfaee5 ttl: add input/output doc 2015-08-13 12:20:12 +08:00
whitequark
62e6f8a03d compiler.embedding.Stitcher: refactor. 2015-08-10 20:26:07 +03:00
whitequark
46476516ba ARTIQException: tell linecache where to look for runtime sources.
Runtime sources can appear in the backtrace when
artiq_raise_from_c is used.
2015-08-10 20:26:07 +03:00
whitequark
c72267ecf5 Implement syscalls for the new compiler. 2015-08-10 20:26:06 +03:00
whitequark
75532d10aa Display full core device backtraces. 2015-08-10 15:12:22 +03:00
whitequark
d4270cf66e Implement receiving data from RPCs. 2015-08-09 20:17:00 +03:00
whitequark
02b1543c63 Implement receiving exceptions from RPCs. 2015-08-09 16:16:41 +03:00
whitequark
8b7d38d203 Add ARTIQ_DUMP_ASSEMBLY. 2015-08-09 15:47:29 +03:00
whitequark
b26af5df60 Implement sending RPCs. 2015-08-09 02:17:19 +03:00
whitequark
13ad9b5d08 Allow to dump ARTIQ/LLVM IR for stitched code. 2015-08-08 21:47:20 +03:00
671a3f1833 doc: precision about dds batch time 2015-08-08 23:05:00 +08:00
0a6fcd9fa0 Revert "comm_generic: cleanup"
This reverts commit be55487d2d.
2015-08-08 21:24:23 +08:00
whitequark
27d2390fed Add zero-cost exception support to runtime and host. 2015-08-08 16:01:31 +03:00
whitequark
ecdebc0b8a session.c: refactor. 2015-08-08 13:21:43 +03:00
whitequark
d6ab567242 coredevice.comm_*: refactor. 2015-08-07 16:44:16 +03:00
be55487d2d comm_generic: cleanup 2015-08-07 21:12:00 +08:00
whitequark
353f454a29 Add basic support for embedded functions with new compiler. 2015-08-07 11:44:49 +03:00
whitequark
b5cf1e395d runtime: avoid race condition when running kernel.
Also, don't bother passing kernel name: entry point is already
recorded in DT_INIT when the kernel is linked.
2015-08-07 08:51:33 +03:00
whitequark
4a8e397a77 Fold llvmlite patches into m-labs/llvmlite repository. 2015-08-05 03:49:01 +03:00
whitequark
62fdc75d2d Integrate libdyld and libunwind.
It is currently possible to run the idle experiment, and it
can raise and catch exceptions, but exceptions are not yet
propagated across RPC boundaries.
2015-08-02 15:43:03 +03:00
1d34c06d79 rtio: detect collision errors 2015-07-29 19:43:35 +08:00
90368415a6 ttl: remove timestamp function
The general idea is that functions that work with absolute timestamps exist only in machine units versions, to help prevent floating point losses of precision. Time differences should be computed in machine units and then converted, e.g. mu_to_seconds(t2-t1).

This function would have had problems after ~50 days of running the device.
2015-07-29 11:11:16 +08:00
5f5227f01f ttl: add timestamp() 2015-07-28 16:20:05 -06:00
e95b66f114 ttl: remove spurious _mu 2015-07-28 16:20:05 -06:00
f836465585 coredevice: environment -> runtime 2015-07-15 11:20:41 +02:00
Yann Sionneau
90ba9f7bbf llvmlite: rename our package to be llvmlite_or1k to avoid collision with llvmlite package needed for numba 2015-07-14 01:01:56 +02:00
56fc7a484c TTLInOut: timestamp -> timestamp_mu 2015-07-13 23:21:29 +02:00
32d141f5ac refactor ddb/pdb/rdb 2015-07-13 22:21:32 +02:00
34aacd3c5f complete AD9914 support (no programmable modulus, untested) 2015-07-08 17:22:43 +02:00
8a33d8c868 never stop RTIO counter 2015-07-07 15:29:38 +02:00
58c0150822 ttl: improve clockgen doc 2015-07-05 19:07:13 +02:00
65ec6c28f4 ttl/clockgen: expose acc_width 2015-07-04 19:21:25 +02:00
753d61b38f complete support for TTL clock generator 2015-07-04 18:36:01 +02:00
9d6287a6a3 expose machine units to user 2015-07-01 22:22:53 +02:00
c71fe29792 simplify unit system and use floats by default 2015-06-26 16:34:37 +02:00
e6a4c2fb36 dds: make it easier to specify phase 2015-06-26 12:05:11 +02:00
87ea1433d3 dds: all working 2015-06-20 18:42:39 -06:00
5a9bdb2e33 DDS monitoring 2015-06-19 15:30:17 -06:00
Yann Sionneau
575dfade38 flash_storage comm: use OK/ERROR replies instead of specific FLASH_WRITE_REPLY 2015-05-29 11:10:40 +02:00
Yann Sionneau
4bf7875b87 flash_storage: refactor + unit tests + artiq_coreconfig.py CLI + doc 2015-05-27 18:06:12 +08:00
ce4b5739ed runtime: reset all DDSes upon startup 2015-05-09 17:12:38 +08:00
1ceb06fb16 dds: use context manager for batches 2015-05-09 14:47:40 +08:00
5c08423b29 dds: support batches in driver 2015-05-08 22:17:06 +08:00
55f2fef576 runtime: support DDS batches 2015-05-08 16:51:54 +08:00
53c6339307 runtime: break ttl-specific functions from rtio 2015-05-08 16:20:12 +08:00
a36c51eb83 DDS over RTIO (batch mode not supported yet) 2015-05-08 14:44:39 +08:00
2adf9d91df recover_underflow -> break_realtime 2015-05-03 20:45:28 +08:00
4048568d8e support kernel handover with coherent time 2015-05-02 23:41:49 +08:00
65b4b7bb12 coredevice: rename rtio to ttl, integrated in+out driver, loopback on the same pin in tests 2015-05-02 10:35:21 +08:00
967145f2dc watchdog support on core device (broken by bug similar to issue #19) 2015-04-29 12:58:37 +08:00
e5f7fcc339 coredevice/comm_tcp: raise exception on connection closed 2015-04-29 11:18:51 +08:00
9b62e7e77b runtime,coredevice: support session reset for serial 2015-04-28 02:11:58 +08:00
8a19766278 runtime,comm_generic: improve and fix list encoding 2015-04-28 01:31:55 +08:00
934a6b0495 runtime,coredevice: Ethernet support (buggy) 2015-04-23 23:22:40 +08:00
18106cc014 comm: refactor to support lwip event model 2015-04-22 01:31:31 +08:00
9f52277245 coredevice/core: set default for ref_period 2015-04-22 01:12:01 +08:00
0c1d256fef comm_dummy: remove unneeded import 2015-04-19 11:41:20 +08:00
c98e08fe36 fix transforms unittest 2015-04-19 11:40:49 +08:00
546996f896 coredevice,runtime: put ref_period into the ddb 2015-04-16 15:15:38 +08:00
ecf6b29279 coredevice/rtio: minor docstring cleanup 2015-04-15 13:53:00 +08:00
4c10182c9f rtio: refactor, use rtlink 2015-04-14 19:44:45 +08:00
88e0aae16d coredevice: add comm_tcp 2015-04-10 01:22:03 +08:00
f427041ae9 coredevice/comm_serial: minor cleanup 2015-04-10 01:21:47 +08:00
cb2596bd81 coredevice/comm: split protocol to allow reuse for Ethernet 2015-04-10 00:59:35 +08:00
fda4ee1a83 coredevice: add compile method 2015-04-07 15:40:25 +08:00
72f9f7ed79 runtime: implement mailbox, use it for kernel startup, exceptions and termination 2015-04-05 22:07:34 +08:00