Commit Graph

100 Commits

Author SHA1 Message Date
Andrew Waterman d851d00036 add BSD license 2013-03-25 16:49:58 -07:00
Andrew Waterman 5339b49eb9 write clean-room elf.h to avoid GPL entanglement 2013-03-25 16:49:43 -07:00
Andrew Waterman 42fde4d484 don't manually send interrupts on keypresses
let the target machine take its own interrupts on nonzero fromhost values
2013-03-25 16:29:31 -07:00
Andrew Waterman 1cc741fd1d add simple README 2013-03-21 17:42:01 -07:00
Andrew Waterman 74adf7fbee fix gcc 4.7 build 2013-03-21 17:39:55 -07:00
Andrew Waterman 3b03718c4d add files I forgot to commit 2013-02-13 18:17:34 -08:00
Andrew Waterman 10ebe98376 switch to c++11 and add option parsing library 2013-02-13 18:03:58 -08:00
Andrew Waterman b15d133ccb some zedboard fixes 2013-02-12 21:51:17 -08:00
Andrew Waterman 449947a7eb fix htif object deletion race condition 2013-02-12 21:43:33 -08:00
Andrew Waterman 86f5e04635 optionally randomize coreid mapping with +coremap-random 2013-01-26 16:12:18 -08:00
Andrew Waterman 4bd2bbcdf8 rewrite and libraryize fesvr
simulator backends should now link against libfesvr.  see riscv-isa-sim
or reference-chip for examples.
2013-01-25 18:55:56 -08:00
Andrew Waterman c1e50b380e refactor htif/memif to separate concerns 2013-01-16 03:01:27 -08:00
Andrew Waterman 8e573ba99f add zedboard support (via the -z flag) 2013-01-06 01:04:18 -08:00
Yunsup Lee dfe719726a fesvr can test other cores rather than 0 2012-08-15 10:46:01 -07:00
Andrew Waterman 36c86b0b26 write_cr now returns cr's previous value 2012-08-03 17:11:33 -07:00
Andrew Waterman 0945532e93 first attempt at character device 2012-08-01 22:50:22 -07:00
Andrew Waterman accbab3a3e fix misaligned access detection 2012-07-30 18:08:54 -07:00
Andrew Waterman fdac737916 correct htif_t::start() behavior 2012-07-22 21:02:45 -07:00
Yunsup Lee fbbae388fa workaround stupid VCS simulator, doesn't respect SIGTERM 2012-07-09 17:43:27 -07:00
Andrew Waterman fef3c47c36 add new system call for non-canonical input 2012-05-16 21:12:38 -07:00
Rimas Avizienis 92daa0667d fixed build error on old gcc versions (e.g. gcc 4.1.2 on isis/RHEL5) 2012-05-15 18:15:26 -07:00
Andrew Waterman 728aca6ed6 improve syscall speed if magic_mem is 64B aligned
this obviates a read-modify-write of a cache line.
2012-05-15 00:40:52 -07:00
Andrew Waterman 7f245c929c support multicore boot 2012-05-09 03:07:30 -07:00
Andrew Waterman 4f583a0651 allow large HTIF ethernet packets 2012-05-04 18:21:32 -07:00
Andrew Waterman 75a608846b fesvr -eth works on lion 2012-05-03 01:54:06 -07:00
Andrew Waterman 80bd162eea kill children after stop 2012-04-12 22:11:24 -07:00
Andrew Waterman 0351c645c2 add -assume0init flag
this allows us to speed up program loading dramatically in situations
where we know the backing memory is initially zeroed.
2012-03-28 21:25:18 -07:00
Andrew Waterman 5db8b49e8c new supervisor mode 2012-03-24 12:55:09 -07:00
Andrew Waterman 4a8e13b7ea improve silly memory test 2012-03-21 15:02:38 -07:00
Andrew Waterman 490fa13d39 support not loading any program ("none") 2012-03-15 18:42:25 -07:00
Andrew Waterman 167f49789b fix elf2hex segfault 2012-03-15 04:42:50 -07:00
jcmartin 8573fd190e Mac OS X support for ethernet. It currently uses a raw ethernet interface via bpf. There may be a better way of doing this. However, half-hearted attempts at using a socket interface were unsuccessful. 2012-03-08 17:53:16 -08:00
Andrew Waterman 07ce41b535 fix ethernet htif; now works on fpga 2012-02-23 22:47:27 -08:00
Andrew Waterman 356c2590e6 fix build with OSX's bitchy gcc 2012-02-20 23:02:57 -08:00
Andrew Waterman a3042b86c9 new htif protocol
you must update your ISA simulator (or any target machine)!

also, the VCS backend and C emulator backend are now merged.
2012-02-19 23:17:06 -08:00
Andrew Waterman a95cd236c5 implement lighter-weight htif packet header 2012-02-17 16:35:07 -08:00
Andrew Waterman ca2397e6da can now specify C emulator binary name on cmd line
rather than -c, you can do -cfoo.
2012-02-14 02:44:37 -08:00
Andrew Waterman 6905b3f894 fix proxy kernel loading 2012-02-13 00:47:07 -08:00
Andrew Waterman 9a9ed4f6f9 don't build libfesvr.so 2012-02-04 23:57:07 -08:00
Andrew Waterman c0829a629e use stderr for PASSED/FAILED 2012-02-01 14:22:34 -08:00
Andrew Waterman adf1cbd7db dump test signatures in 16B big endian 2012-01-31 19:05:46 -08:00
Andrew Waterman f9b2ad0e43 dump test signature if -testsig specified 2012-01-31 17:30:30 -08:00
Andrew Waterman 88d6fdbc27 fix htif_eth packet size 2012-01-31 14:20:39 -08:00
Andrew Waterman 68822c474c fix mainvars bug 2012-01-31 03:50:13 -08:00
Andrew Waterman 6c77e0fb70 rewrite in C++; eliminate all python 2012-01-31 03:43:42 -08:00
Andrew Waterman 30c4f9a4c9 massive rewrite of HTIF code 2012-01-31 01:36:38 -08:00
Andrew Waterman 1d86641cb8 change eth/csim memsize to 512M 2012-01-25 18:20:53 -08:00
Andrew Waterman d0d514ec37 write memsize, core count to memory 2012-01-11 15:43:29 -08:00
Andrew Waterman edf27347c0 change packet size to 64B; add mem test 2012-01-03 15:26:40 -08:00
Rimas Avizienis 14cce2af91 C simulator interface and RTL simulator interface are now identical (probably should be merged)
Both write 2 32-bit words starting at memory location 0 on the target machine so it knows
how much memory and how many cores are in the system and must match target machines config
Typo fix in fesvr script, generated makefile's clean target now deletes everything it should
2011-12-04 03:54:29 -08:00