Yes that is what the acronym stands for. But the hx4k device that Blackice Mx uses has no built-in support for I2C unlike other ice40 devices such as the up5k.
Yes, they are referring to Philips I2C.
Those cores do not exist on the hx4k or hx8k. You have to write your own. (Those cores are not that usable on the chips (like up5k) that do support them. You are often better off using an I2C core tailored to your intended use.)
The STM32 like other microcontrollers supports I2C and the SDA and SCL pins for one such I2C bus are connected to the RPi header. But there is no support in the firmware for that. There are also SPI pins on the Rpi header shared with the ice40.
Uploading bitstreams makes no use of I2C. The bitstream is sent using a serial connection (actually CDC-ACM) via the USB PRG connetcor (the one in the corner of the IceCore board) to the STM32, which then uses SPI to configure the ice40 device.
I2C and UART and SPI are all different serial protocols that can be used on FPGAs and microcontrollers such as the STM32.
On the Blackice Mx you can use a core that you write yourself or find from github or elsewhere to do any of these. For SPI and UART there are some shared pins with the STM32 if you want to communicate with that using those protocols.
The latest STM32 fimware supports UART from the ice40 via the STM32 to the PC host using fpga pins 61 and 62.
If you want to use I2C from the ice40 to a external device connected via Mixmod pins, then you can use any two pins that you choose for SCL and SDA. An I2C core that I use is here
I used a version of that to drive Wii Nunchuks (which are I2C devices) in the Pacman game that I recently posted about.
Sorry if my answer was confusing. There was so much confusion in your questions, that answering them was difficult.
.