Some open-source and multiplatform tools like openFPGALoader and APIO can be alternatives to Vivado and Quartus. Basically, xilinx's and altera's FPGAs can be programmed in the same tool. π
Reading List
Digital Design and Computer Architecture RISC-V Edition, by Sarah L Harris and David Harris
Computer Organization and Design RISC-V Edition, by David Patterson and John Hennessy