How does my SoC access FPGA IP Cores ??

Hi,

I'm using Altera Cyclone V SoC, and I'm trying to access FPGA sides (the IP cores, for example, the FIFOed Avalon Uart IP Core). In NIOS II, the IP cores use the Altera HAL drivers included in the package, however, the drivers work with HAL library for NIOS II Systems. My question is: 

1) How can I access the FIFOed Avalon UART IP Core from my SoC ?? Can I work with the included Altera HAL drivers of the IP and just edit some parts in the drivers ?? 

2) In case it's difficult, can I use another UART IP Core, such as the Altera 16550 UART Ip Core, to make things easier ?? What is the best way to access the UART IP Core in FPGA sides, as I don't want to use the UART peripherals of the SoC ??